@react-native/debugger-frontend 0.73.0-nightly-20230922-52104c6ee
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/BUILD_INFO +10 -0
- package/README.md +22 -0
- package/dist/third-party/LICENSE +28 -0
- package/dist/third-party/front_end/Images/3d-center.svg +1 -0
- package/dist/third-party/front_end/Images/3d-pan.svg +1 -0
- package/dist/third-party/front_end/Images/3d-rotate.svg +1 -0
- package/dist/third-party/front_end/Images/Images.js +223 -0
- package/dist/third-party/front_end/Images/accelerometer-back.svg +1 -0
- package/dist/third-party/front_end/Images/accelerometer-bottom.png +0 -0
- package/dist/third-party/front_end/Images/accelerometer-front.svg +1 -0
- package/dist/third-party/front_end/Images/accelerometer-left.png +0 -0
- package/dist/third-party/front_end/Images/accelerometer-right.png +0 -0
- package/dist/third-party/front_end/Images/accelerometer-top.png +0 -0
- package/dist/third-party/front_end/Images/align-content-center.svg +1 -0
- package/dist/third-party/front_end/Images/align-content-end.svg +1 -0
- package/dist/third-party/front_end/Images/align-content-space-around.svg +1 -0
- package/dist/third-party/front_end/Images/align-content-space-between.svg +1 -0
- package/dist/third-party/front_end/Images/align-content-space-evenly.svg +1 -0
- package/dist/third-party/front_end/Images/align-content-start.svg +1 -0
- package/dist/third-party/front_end/Images/align-content-stretch.svg +1 -0
- package/dist/third-party/front_end/Images/align-items-baseline.svg +1 -0
- package/dist/third-party/front_end/Images/align-items-center.svg +1 -0
- package/dist/third-party/front_end/Images/align-items-end.svg +1 -0
- package/dist/third-party/front_end/Images/align-items-start.svg +1 -0
- package/dist/third-party/front_end/Images/align-items-stretch.svg +1 -0
- package/dist/third-party/front_end/Images/align-self-center.svg +1 -0
- package/dist/third-party/front_end/Images/align-self-end.svg +1 -0
- package/dist/third-party/front_end/Images/align-self-start.svg +1 -0
- package/dist/third-party/front_end/Images/align-self-stretch.svg +1 -0
- package/dist/third-party/front_end/Images/arrow-down.svg +1 -0
- package/dist/third-party/front_end/Images/arrow-drop-down-dark.svg +1 -0
- package/dist/third-party/front_end/Images/arrow-drop-down-light.svg +1 -0
- package/dist/third-party/front_end/Images/arrow-up-down-circle.svg +1 -0
- package/dist/third-party/front_end/Images/arrow-up-down.svg +1 -0
- package/dist/third-party/front_end/Images/arrow-up.svg +1 -0
- package/dist/third-party/front_end/Images/bell.svg +1 -0
- package/dist/third-party/front_end/Images/bezier-curve-filled.svg +1 -0
- package/dist/third-party/front_end/Images/bin.svg +1 -0
- package/dist/third-party/front_end/Images/bottom-panel-close.svg +1 -0
- package/dist/third-party/front_end/Images/bottom-panel-open.svg +1 -0
- package/dist/third-party/front_end/Images/brackets.svg +1 -0
- package/dist/third-party/front_end/Images/breakpoint-circle.svg +1 -0
- package/dist/third-party/front_end/Images/breakpoint-crossed-filled.svg +1 -0
- package/dist/third-party/front_end/Images/breakpoint-crossed.svg +1 -0
- package/dist/third-party/front_end/Images/brush-filled.svg +1 -0
- package/dist/third-party/front_end/Images/brush.svg +1 -0
- package/dist/third-party/front_end/Images/bug.svg +1 -0
- package/dist/third-party/front_end/Images/bundle.svg +1 -0
- package/dist/third-party/front_end/Images/check-circle.svg +1 -0
- package/dist/third-party/front_end/Images/check-double.svg +1 -0
- package/dist/third-party/front_end/Images/checker.svg +1 -0
- package/dist/third-party/front_end/Images/checkmark.svg +1 -0
- package/dist/third-party/front_end/Images/chevron-double-right.svg +1 -0
- package/dist/third-party/front_end/Images/chevron-down.svg +1 -0
- package/dist/third-party/front_end/Images/chevron-left-dot.svg +1 -0
- package/dist/third-party/front_end/Images/chevron-left.svg +1 -0
- package/dist/third-party/front_end/Images/chevron-right.svg +1 -0
- package/dist/third-party/front_end/Images/chevron-up.svg +1 -0
- package/dist/third-party/front_end/Images/chromeLeft.avif +0 -0
- package/dist/third-party/front_end/Images/chromeMiddle.avif +0 -0
- package/dist/third-party/front_end/Images/chromeRight.avif +0 -0
- package/dist/third-party/front_end/Images/clear-list.svg +1 -0
- package/dist/third-party/front_end/Images/clear.svg +1 -0
- package/dist/third-party/front_end/Images/cloud.svg +1 -0
- package/dist/third-party/front_end/Images/code-circle.svg +1 -0
- package/dist/third-party/front_end/Images/code.svg +1 -0
- package/dist/third-party/front_end/Images/colon.svg +1 -0
- package/dist/third-party/front_end/Images/color-picker-filled.svg +1 -0
- package/dist/third-party/front_end/Images/color-picker.svg +1 -0
- package/dist/third-party/front_end/Images/console-conditional-breakpoint.svg +1 -0
- package/dist/third-party/front_end/Images/console-logpoint.svg +1 -0
- package/dist/third-party/front_end/Images/cookie.svg +1 -0
- package/dist/third-party/front_end/Images/copy.svg +1 -0
- package/dist/third-party/front_end/Images/credit-card.svg +1 -0
- package/dist/third-party/front_end/Images/cross-circle-filled.svg +1 -0
- package/dist/third-party/front_end/Images/cross-circle.svg +1 -0
- package/dist/third-party/front_end/Images/cross.svg +1 -0
- package/dist/third-party/front_end/Images/cssoverview_icons_2x.avif +0 -0
- package/dist/third-party/front_end/Images/custom-typography.svg +1 -0
- package/dist/third-party/front_end/Images/database.svg +1 -0
- package/dist/third-party/front_end/Images/deployed.svg +1 -0
- package/dist/third-party/front_end/Images/device-fold.svg +1 -0
- package/dist/third-party/front_end/Images/devices.svg +1 -0
- package/dist/third-party/front_end/Images/dock-bottom.svg +1 -0
- package/dist/third-party/front_end/Images/dock-left.svg +1 -0
- package/dist/third-party/front_end/Images/dock-right.svg +1 -0
- package/dist/third-party/front_end/Images/dock-window.svg +1 -0
- package/dist/third-party/front_end/Images/document.svg +1 -0
- package/dist/third-party/front_end/Images/dots-horizontal.svg +1 -0
- package/dist/third-party/front_end/Images/dots-vertical.svg +1 -0
- package/dist/third-party/front_end/Images/download.svg +1 -0
- package/dist/third-party/front_end/Images/edit.svg +1 -0
- package/dist/third-party/front_end/Images/empty.svg +1 -0
- package/dist/third-party/front_end/Images/errorWave.svg +1 -0
- package/dist/third-party/front_end/Images/exclamation.svg +1 -0
- package/dist/third-party/front_end/Images/experiment-check.svg +1 -0
- package/dist/third-party/front_end/Images/experiment.svg +1 -0
- package/dist/third-party/front_end/Images/eye.svg +1 -0
- package/dist/third-party/front_end/Images/file-document.svg +1 -0
- package/dist/third-party/front_end/Images/file-font.svg +1 -0
- package/dist/third-party/front_end/Images/file-generic.svg +1 -0
- package/dist/third-party/front_end/Images/file-image.svg +1 -0
- package/dist/third-party/front_end/Images/file-script.svg +1 -0
- package/dist/third-party/front_end/Images/file-snippet.svg +1 -0
- package/dist/third-party/front_end/Images/file-stylesheet.svg +1 -0
- package/dist/third-party/front_end/Images/filter-clear.svg +1 -0
- package/dist/third-party/front_end/Images/filter-filled.svg +1 -0
- package/dist/third-party/front_end/Images/filter.svg +1 -0
- package/dist/third-party/front_end/Images/flex-direction.svg +1 -0
- package/dist/third-party/front_end/Images/flex-no-wrap.svg +1 -0
- package/dist/third-party/front_end/Images/flex-wrap.svg +1 -0
- package/dist/third-party/front_end/Images/flow.svg +1 -0
- package/dist/third-party/front_end/Images/fold-more.svg +1 -0
- package/dist/third-party/front_end/Images/folder.svg +1 -0
- package/dist/third-party/front_end/Images/frame-crossed.svg +1 -0
- package/dist/third-party/front_end/Images/frame-icon.svg +1 -0
- package/dist/third-party/front_end/Images/frame.svg +1 -0
- package/dist/third-party/front_end/Images/gear-filled.svg +1 -0
- package/dist/third-party/front_end/Images/gear.svg +1 -0
- package/dist/third-party/front_end/Images/gears.svg +1 -0
- package/dist/third-party/front_end/Images/heap-snapshot.svg +1 -0
- package/dist/third-party/front_end/Images/heap-snapshots.svg +1 -0
- package/dist/third-party/front_end/Images/help.svg +1 -0
- package/dist/third-party/front_end/Images/iframe-crossed.svg +1 -0
- package/dist/third-party/front_end/Images/iframe.svg +1 -0
- package/dist/third-party/front_end/Images/import.svg +1 -0
- package/dist/third-party/front_end/Images/info-filled.svg +1 -0
- package/dist/third-party/front_end/Images/info.svg +1 -0
- package/dist/third-party/front_end/Images/issue-cross-filled.svg +1 -0
- package/dist/third-party/front_end/Images/issue-exclamation-filled.svg +1 -0
- package/dist/third-party/front_end/Images/issue-questionmark-filled.svg +1 -0
- package/dist/third-party/front_end/Images/issue-text-filled.svg +1 -0
- package/dist/third-party/front_end/Images/justify-content-center.svg +1 -0
- package/dist/third-party/front_end/Images/justify-content-end.svg +1 -0
- package/dist/third-party/front_end/Images/justify-content-space-around.svg +1 -0
- package/dist/third-party/front_end/Images/justify-content-space-between.svg +1 -0
- package/dist/third-party/front_end/Images/justify-content-space-evenly.svg +1 -0
- package/dist/third-party/front_end/Images/justify-content-start.svg +1 -0
- package/dist/third-party/front_end/Images/justify-items-center.svg +1 -0
- package/dist/third-party/front_end/Images/justify-items-end.svg +1 -0
- package/dist/third-party/front_end/Images/justify-items-start.svg +1 -0
- package/dist/third-party/front_end/Images/justify-items-stretch.svg +1 -0
- package/dist/third-party/front_end/Images/keyboard-pen.svg +1 -0
- package/dist/third-party/front_end/Images/large-arrow-right-filled.svg +1 -0
- package/dist/third-party/front_end/Images/largeIcons.svg +2 -0
- package/dist/third-party/front_end/Images/layers-filled.svg +1 -0
- package/dist/third-party/front_end/Images/layers.svg +1 -0
- package/dist/third-party/front_end/Images/left-panel-close.svg +1 -0
- package/dist/third-party/front_end/Images/left-panel-open.svg +1 -0
- package/dist/third-party/front_end/Images/lighthouse_logo.svg +1 -0
- package/dist/third-party/front_end/Images/list.svg +1 -0
- package/dist/third-party/front_end/Images/mediumIcons.svg +1 -0
- package/dist/third-party/front_end/Images/memory.svg +1 -0
- package/dist/third-party/front_end/Images/minus.svg +1 -0
- package/dist/third-party/front_end/Images/minus_icon.svg +1 -0
- package/dist/third-party/front_end/Images/navigationControls.png +0 -0
- package/dist/third-party/front_end/Images/navigationControls_2x.png +0 -0
- package/dist/third-party/front_end/Images/network-settings.svg +1 -0
- package/dist/third-party/front_end/Images/nodeIcon.avif +0 -0
- package/dist/third-party/front_end/Images/node_search_icon.svg +1 -0
- package/dist/third-party/front_end/Images/open-externally.svg +1 -0
- package/dist/third-party/front_end/Images/pause.svg +1 -0
- package/dist/third-party/front_end/Images/performance.svg +1 -0
- package/dist/third-party/front_end/Images/person.svg +1 -0
- package/dist/third-party/front_end/Images/play.svg +1 -0
- package/dist/third-party/front_end/Images/plus.svg +1 -0
- package/dist/third-party/front_end/Images/popoverArrows.png +0 -0
- package/dist/third-party/front_end/Images/popup.svg +1 -0
- package/dist/third-party/front_end/Images/preview_feature_video_thumbnail.svg +1 -0
- package/dist/third-party/front_end/Images/profile.svg +1 -0
- package/dist/third-party/front_end/Images/react_native/welcomeIcon.png +0 -0
- package/dist/third-party/front_end/Images/record-start.svg +1 -0
- package/dist/third-party/front_end/Images/record-stop.svg +1 -0
- package/dist/third-party/front_end/Images/redo.svg +1 -0
- package/dist/third-party/front_end/Images/refresh.svg +1 -0
- package/dist/third-party/front_end/Images/replace.svg +1 -0
- package/dist/third-party/front_end/Images/replay.svg +1 -0
- package/dist/third-party/front_end/Images/resizeDiagonal.svg +1 -0
- package/dist/third-party/front_end/Images/resizeHorizontal.svg +1 -0
- package/dist/third-party/front_end/Images/resizeVertical.svg +1 -0
- package/dist/third-party/front_end/Images/resume.svg +1 -0
- package/dist/third-party/front_end/Images/review.svg +1 -0
- package/dist/third-party/front_end/Images/right-panel-close.svg +1 -0
- package/dist/third-party/front_end/Images/right-panel-open.svg +1 -0
- package/dist/third-party/front_end/Images/screen-rotation.svg +1 -0
- package/dist/third-party/front_end/Images/search.svg +1 -0
- package/dist/third-party/front_end/Images/securityIcons.svg +1 -0
- package/dist/third-party/front_end/Images/select-element.svg +1 -0
- package/dist/third-party/front_end/Images/settings_14x14_icon.svg +1 -0
- package/dist/third-party/front_end/Images/shadow.svg +1 -0
- package/dist/third-party/front_end/Images/smallIcons.svg +1 -0
- package/dist/third-party/front_end/Images/snippet.svg +1 -0
- package/dist/third-party/front_end/Images/star.svg +1 -0
- package/dist/third-party/front_end/Images/step-into.svg +1 -0
- package/dist/third-party/front_end/Images/step-out.svg +1 -0
- package/dist/third-party/front_end/Images/step-over.svg +1 -0
- package/dist/third-party/front_end/Images/step.svg +1 -0
- package/dist/third-party/front_end/Images/stop.svg +1 -0
- package/dist/third-party/front_end/Images/symbol.svg +1 -0
- package/dist/third-party/front_end/Images/sync.svg +1 -0
- package/dist/third-party/front_end/Images/table.svg +1 -0
- package/dist/third-party/front_end/Images/toolbarResizerVertical.png +0 -0
- package/dist/third-party/front_end/Images/top-panel-close.svg +1 -0
- package/dist/third-party/front_end/Images/top-panel-open.svg +1 -0
- package/dist/third-party/front_end/Images/touchCursor.png +0 -0
- package/dist/third-party/front_end/Images/touchCursor_2x.png +0 -0
- package/dist/third-party/front_end/Images/triangle-bottom-right.svg +1 -0
- package/dist/third-party/front_end/Images/triangle-down.svg +1 -0
- package/dist/third-party/front_end/Images/triangle-left.svg +1 -0
- package/dist/third-party/front_end/Images/triangle-right.svg +1 -0
- package/dist/third-party/front_end/Images/triangle-up.svg +1 -0
- package/dist/third-party/front_end/Images/undo.svg +1 -0
- package/dist/third-party/front_end/Images/warning-filled.svg +1 -0
- package/dist/third-party/front_end/Images/warning.svg +1 -0
- package/dist/third-party/front_end/Images/warning_icon.svg +1 -0
- package/dist/third-party/front_end/Images/watch.svg +1 -0
- package/dist/third-party/front_end/Images/whatsnew.avif +0 -0
- package/dist/third-party/front_end/Images/width.svg +1 -0
- package/dist/third-party/front_end/Tests.js +1662 -0
- package/dist/third-party/front_end/core/common/common-legacy.js +1 -0
- package/dist/third-party/front_end/core/common/common.js +1 -0
- package/dist/third-party/front_end/core/dom_extension/dom_extension.js +1 -0
- package/dist/third-party/front_end/core/host/host-legacy.js +1 -0
- package/dist/third-party/front_end/core/host/host.js +1 -0
- package/dist/third-party/front_end/core/i18n/i18n.js +1 -0
- package/dist/third-party/front_end/core/i18n/locales/en-US.json +1 -0
- package/dist/third-party/front_end/core/i18n/locales/zh.json +1 -0
- package/dist/third-party/front_end/core/platform/platform.js +1 -0
- package/dist/third-party/front_end/core/protocol_client/protocol_client-legacy.js +1 -0
- package/dist/third-party/front_end/core/protocol_client/protocol_client.js +1 -0
- package/dist/third-party/front_end/core/root/root-legacy.js +1 -0
- package/dist/third-party/front_end/core/root/root.js +1 -0
- package/dist/third-party/front_end/core/sdk/sdk-legacy.js +1 -0
- package/dist/third-party/front_end/core/sdk/sdk-meta.js +1 -0
- package/dist/third-party/front_end/core/sdk/sdk.js +1 -0
- package/dist/third-party/front_end/device_mode_emulation_frame.html +20 -0
- package/dist/third-party/front_end/devtools_app.html +20 -0
- package/dist/third-party/front_end/devtools_compatibility.js +1595 -0
- package/dist/third-party/front_end/emulated_devices/optimized/MotoG4-landscape.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/MotoG4-portrait.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/Nexus5X-landscape.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/Nexus5X-portrait.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/Nexus6P-landscape.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/Nexus6P-portrait.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nest-hub-horizontal.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nest-hub-max-horizontal.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-default-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-default-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-navigation-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-navigation-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-default-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-default-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-keyboard-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-keyboard-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-navigation-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-navigation-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-default-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-default-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-default-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-default-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-navigation-1x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-navigation-2x.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/iPad-landscape.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/iPad-portrait.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/iPhone5-landscape.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/iPhone5-portrait.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/iPhone6-landscape.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/iPhone6-portrait.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/iPhone6Plus-landscape.avif +0 -0
- package/dist/third-party/front_end/emulated_devices/optimized/iPhone6Plus-portrait.avif +0 -0
- package/dist/third-party/front_end/entrypoints/device_mode_emulation_frame/device_mode_emulation_frame.js +1 -0
- package/dist/third-party/front_end/entrypoints/devtools_app/devtools_app.js +1 -0
- package/dist/third-party/front_end/entrypoints/formatter_worker/FormatterActions.js +1 -0
- package/dist/third-party/front_end/entrypoints/formatter_worker/formatter_worker-entrypoint.js +1 -0
- package/dist/third-party/front_end/entrypoints/formatter_worker/formatter_worker.js +1 -0
- package/dist/third-party/front_end/entrypoints/heap_snapshot_worker/heap_snapshot_worker-entrypoint.js +1 -0
- package/dist/third-party/front_end/entrypoints/heap_snapshot_worker/heap_snapshot_worker-legacy.js +1 -0
- package/dist/third-party/front_end/entrypoints/heap_snapshot_worker/heap_snapshot_worker.js +1 -0
- package/dist/third-party/front_end/entrypoints/inspector/inspector.js +1 -0
- package/dist/third-party/front_end/entrypoints/inspector_main/inspector_main-meta.js +1 -0
- package/dist/third-party/front_end/entrypoints/inspector_main/inspector_main.js +1 -0
- package/dist/third-party/front_end/entrypoints/js_app/js_app.js +1 -0
- package/dist/third-party/front_end/entrypoints/lighthouse_worker/lighthouse_worker.js +1 -0
- package/dist/third-party/front_end/entrypoints/main/main-legacy.js +1 -0
- package/dist/third-party/front_end/entrypoints/main/main-meta.js +1 -0
- package/dist/third-party/front_end/entrypoints/main/main.js +1 -0
- package/dist/third-party/front_end/entrypoints/ndb_app/ndb_app.js +1 -0
- package/dist/third-party/front_end/entrypoints/node_app/node_app.js +1 -0
- package/dist/third-party/front_end/entrypoints/rn_inspector/rn_inspector.js +1 -0
- package/dist/third-party/front_end/entrypoints/shell/shell.js +1 -0
- package/dist/third-party/front_end/entrypoints/wasmparser_worker/wasmparser_worker-entrypoint.js +1 -0
- package/dist/third-party/front_end/entrypoints/wasmparser_worker/wasmparser_worker.js +1 -0
- package/dist/third-party/front_end/entrypoints/worker_app/worker_app.js +1 -0
- package/dist/third-party/front_end/inspector.html +20 -0
- package/dist/third-party/front_end/integration_test_runner.html +40 -0
- package/dist/third-party/front_end/js_app.html +20 -0
- package/dist/third-party/front_end/legacy_test_runner/legacy_test_runner.js +36 -0
- package/dist/third-party/front_end/legacy_test_runner/test_runner/test_runner.js +1 -0
- package/dist/third-party/front_end/models/bindings/bindings-legacy.js +1 -0
- package/dist/third-party/front_end/models/bindings/bindings.js +1 -0
- package/dist/third-party/front_end/models/breakpoints/breakpoints-legacy.js +1 -0
- package/dist/third-party/front_end/models/breakpoints/breakpoints.js +1 -0
- package/dist/third-party/front_end/models/emulation/emulation.js +1 -0
- package/dist/third-party/front_end/models/extensions/extensions-legacy.js +1 -0
- package/dist/third-party/front_end/models/extensions/extensions.js +1 -0
- package/dist/third-party/front_end/models/formatter/formatter-legacy.js +1 -0
- package/dist/third-party/front_end/models/formatter/formatter.js +1 -0
- package/dist/third-party/front_end/models/har/har.js +1 -0
- package/dist/third-party/front_end/models/heap_snapshot_model/heap_snapshot_model-legacy.js +1 -0
- package/dist/third-party/front_end/models/heap_snapshot_model/heap_snapshot_model.js +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/CoepCoopSandboxedIframeCannotNavigateToCoopPage.md +4 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/CoepCorpNotSameOrigin.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/CoepCorpNotSameOriginAfterDefaultedToSameOriginByCoep.md +18 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/CoepCorpNotSameSite.md +7 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/CoepFrameResourceNeedsCoepHeader.md +10 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/CompatibilityModeQuirks.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/CookieAttributeValueExceedsMaxSize.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/LowTextContrast.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteExcludeContextDowngradeRead.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteExcludeContextDowngradeSet.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteExcludeNavigationContextDowngrade.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteInvalidSameParty.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureErrorRead.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureErrorSet.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureWarnRead.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureWarnSet.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteUnspecifiedLaxAllowUnsafeRead.md +9 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteUnspecifiedLaxAllowUnsafeSet.md +9 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteUnspecifiedTreatedAsLaxRead.md +9 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteUnspecifiedTreatedAsLaxSet.md +9 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteWarnCrossDowngradeRead.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteWarnCrossDowngradeSet.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteWarnStrictLaxDowngradeStrict.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arInsecureContext.md +7 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arInvalidRegisterOsSourceHeader.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arInvalidRegisterOsTriggerHeader.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arInvalidRegisterSourceHeader.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arInvalidRegisterTriggerHeader.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arOsSourceIgnored.md +18 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arOsTriggerIgnored.md +19 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arPermissionPolicyDisabled.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arSourceAndTriggerHeaders.md +9 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arSourceIgnored.md +13 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arTriggerIgnored.md +12 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arUntrustworthyReportingOrigin.md +10 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/arWebAndOsHeaders.md +11 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/bounceTrackingMitigations.md +3 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/clientHintMetaTagAllowListInvalidOrigin.md +4 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/clientHintMetaTagModifiedHTML.md +4 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/cookieExcludeBlockedWithinFirstPartySet.md +4 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/cookieExcludeDomainNonAscii.md +11 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/cookieWarnDomainNonAscii.md +11 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsAllowCredentialsRequired.md +6 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsDisabledScheme.md +7 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsDisallowedByMode.md +7 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsHeaderDisallowedByPreflightResponse.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsInsecurePrivateNetwork.md +10 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsInvalidHeaderValues.md +7 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsMethodDisallowedByPreflightResponse.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsNoCorsRedirectModeNotFollow.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsOriginMismatch.md +6 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsPreflightAllowPrivateNetworkError.md +10 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsPreflightResponseInvalid.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsRedirectContainsCredentials.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/corsWildcardOriginNotAllowed.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/cspEvalViolation.md +9 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/cspInlineViolation.md +10 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/cspTrustedTypesPolicyViolation.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/cspTrustedTypesSinkViolation.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/cspURLViolation.md +10 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/deprecation.md +3 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestAccountsHttpNotFound.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestAccountsInvalidResponse.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestAccountsNoResponse.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestApprovalDeclined.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestCanceled.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataHttpNotFound.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataInvalidResponse.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataNoResponse.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestErrorFetchingSignin.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestErrorIdToken.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenHttpNotFound.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenInvalidRequest.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenInvalidResponse.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenNoResponse.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestInvalidSigninResponse.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestManifestHttpNotFound.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestManifestInvalidResponse.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestManifestNoResponse.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestTooManyRequests.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestInvalidAccountsResponse.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestInvalidConfigOrWellKnown.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoAccountSharingPermission.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoApiPermission.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoReturningUserFromFetchedAccounts.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotIframe.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotPotentiallyTrustworthy.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotSameOrigin.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotSignedInWithIdp.md +1 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericCrossOriginPortalPostMessageError.md +3 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormAriaLabelledByToNonExistingId.md +8 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormAutocompleteAttributeEmptyError.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormDuplicateIdForInputError.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormEmptyIdAndNameAttributesForInputError.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormInputAssignedAutocompleteValueToIdOrNameAttributeError.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormInputHasWrongButWellIntendedAutocompleteValueError.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormInputWithNoLabelError.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormLabelForMatchesNonExistingIdError.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormLabelForNameError.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormLabelHasNeitherForNorNestedInput.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/heavyAd.md +10 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/mixedContent.md +5 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/sharedArrayBuffer.md +7 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/stylesheetLateImport.md +4 -0
- package/dist/third-party/front_end/models/issues_manager/descriptions/stylesheetRequestFailed.md +3 -0
- package/dist/third-party/front_end/models/issues_manager/issues_manager.js +1 -0
- package/dist/third-party/front_end/models/javascript_metadata/javascript_metadata.js +1 -0
- package/dist/third-party/front_end/models/logs/logs-meta.js +1 -0
- package/dist/third-party/front_end/models/logs/logs.js +1 -0
- package/dist/third-party/front_end/models/persistence/persistence-legacy.js +1 -0
- package/dist/third-party/front_end/models/persistence/persistence-meta.js +1 -0
- package/dist/third-party/front_end/models/persistence/persistence.js +1 -0
- package/dist/third-party/front_end/models/source_map_scopes/source_map_scopes.js +1 -0
- package/dist/third-party/front_end/models/text_utils/text_utils-legacy.js +1 -0
- package/dist/third-party/front_end/models/text_utils/text_utils.js +1 -0
- package/dist/third-party/front_end/models/timeline_model/timeline_model-legacy.js +1 -0
- package/dist/third-party/front_end/models/timeline_model/timeline_model.js +1 -0
- package/dist/third-party/front_end/models/trace/extras/extras.js +1 -0
- package/dist/third-party/front_end/models/trace/handlers/handlers.js +1 -0
- package/dist/third-party/front_end/models/trace/helpers/helpers.js +1 -0
- package/dist/third-party/front_end/models/trace/trace.js +1 -0
- package/dist/third-party/front_end/models/trace/types/types.js +1 -0
- package/dist/third-party/front_end/models/workspace/workspace-legacy.js +1 -0
- package/dist/third-party/front_end/models/workspace/workspace.js +1 -0
- package/dist/third-party/front_end/models/workspace_diff/workspace_diff-legacy.js +1 -0
- package/dist/third-party/front_end/models/workspace_diff/workspace_diff.js +1 -0
- package/dist/third-party/front_end/ndb_app.html +20 -0
- package/dist/third-party/front_end/node_app.html +20 -0
- package/dist/third-party/front_end/panels/accessibility/accessibility-legacy.js +1 -0
- package/dist/third-party/front_end/panels/accessibility/accessibility-meta.js +1 -0
- package/dist/third-party/front_end/panels/accessibility/accessibility.js +1 -0
- package/dist/third-party/front_end/panels/animation/animation-legacy.js +1 -0
- package/dist/third-party/front_end/panels/animation/animation-meta.js +1 -0
- package/dist/third-party/front_end/panels/animation/animation.js +1 -0
- package/dist/third-party/front_end/panels/application/application-legacy.js +1 -0
- package/dist/third-party/front_end/panels/application/application-meta.js +1 -0
- package/dist/third-party/front_end/panels/application/application.js +1 -0
- package/dist/third-party/front_end/panels/application/components/components.js +1 -0
- package/dist/third-party/front_end/panels/application/preloading/components/components.js +1 -0
- package/dist/third-party/front_end/panels/browser_debugger/browser_debugger-legacy.js +1 -0
- package/dist/third-party/front_end/panels/browser_debugger/browser_debugger-meta.js +1 -0
- package/dist/third-party/front_end/panels/browser_debugger/browser_debugger.js +1 -0
- package/dist/third-party/front_end/panels/changes/changes-legacy.js +1 -0
- package/dist/third-party/front_end/panels/changes/changes-meta.js +1 -0
- package/dist/third-party/front_end/panels/changes/changes.js +1 -0
- package/dist/third-party/front_end/panels/console/console-legacy.js +1 -0
- package/dist/third-party/front_end/panels/console/console-meta.js +1 -0
- package/dist/third-party/front_end/panels/console/console.js +6 -0
- package/dist/third-party/front_end/panels/console_counters/console_counters-meta.js +1 -0
- package/dist/third-party/front_end/panels/console_counters/console_counters.js +1 -0
- package/dist/third-party/front_end/panels/coverage/coverage-legacy.js +1 -0
- package/dist/third-party/front_end/panels/coverage/coverage-meta.js +1 -0
- package/dist/third-party/front_end/panels/coverage/coverage.js +1 -0
- package/dist/third-party/front_end/panels/css_overview/components/components.js +1 -0
- package/dist/third-party/front_end/panels/css_overview/css_overview-meta.js +1 -0
- package/dist/third-party/front_end/panels/css_overview/css_overview.js +144 -0
- package/dist/third-party/front_end/panels/developer_resources/developer_resources-meta.js +1 -0
- package/dist/third-party/front_end/panels/developer_resources/developer_resources.js +1 -0
- package/dist/third-party/front_end/panels/elements/components/components.js +1 -0
- package/dist/third-party/front_end/panels/elements/elements-legacy.js +1 -0
- package/dist/third-party/front_end/panels/elements/elements-meta.js +1 -0
- package/dist/third-party/front_end/panels/elements/elements.js +1 -0
- package/dist/third-party/front_end/panels/emulation/components/components.js +22 -0
- package/dist/third-party/front_end/panels/emulation/emulation-legacy.js +1 -0
- package/dist/third-party/front_end/panels/emulation/emulation-meta.js +1 -0
- package/dist/third-party/front_end/panels/emulation/emulation.js +1 -0
- package/dist/third-party/front_end/panels/event_listeners/event_listeners.js +1 -0
- package/dist/third-party/front_end/panels/issues/components/components.js +1 -0
- package/dist/third-party/front_end/panels/issues/issues-meta.js +1 -0
- package/dist/third-party/front_end/panels/issues/issues.js +1 -0
- package/dist/third-party/front_end/panels/js_profiler/js_profiler-meta.js +1 -0
- package/dist/third-party/front_end/panels/js_profiler/js_profiler.js +1 -0
- package/dist/third-party/front_end/panels/layer_viewer/layer_viewer-legacy.js +1 -0
- package/dist/third-party/front_end/panels/layer_viewer/layer_viewer-meta.js +1 -0
- package/dist/third-party/front_end/panels/layer_viewer/layer_viewer.js +1 -0
- package/dist/third-party/front_end/panels/layers/layers-meta.js +1 -0
- package/dist/third-party/front_end/panels/layers/layers.js +1 -0
- package/dist/third-party/front_end/panels/lighthouse/lighthouse-legacy.js +1 -0
- package/dist/third-party/front_end/panels/lighthouse/lighthouse-meta.js +1 -0
- package/dist/third-party/front_end/panels/lighthouse/lighthouse.js +66 -0
- package/dist/third-party/front_end/panels/media/media-meta.js +1 -0
- package/dist/third-party/front_end/panels/media/media.js +25 -0
- package/dist/third-party/front_end/panels/mobile_throttling/mobile_throttling-legacy.js +1 -0
- package/dist/third-party/front_end/panels/mobile_throttling/mobile_throttling-meta.js +1 -0
- package/dist/third-party/front_end/panels/mobile_throttling/mobile_throttling.js +1 -0
- package/dist/third-party/front_end/panels/network/components/components.js +1 -0
- package/dist/third-party/front_end/panels/network/forward/forward.js +1 -0
- package/dist/third-party/front_end/panels/network/network-legacy.js +1 -0
- package/dist/third-party/front_end/panels/network/network-meta.js +1 -0
- package/dist/third-party/front_end/panels/network/network.js +1 -0
- package/dist/third-party/front_end/panels/performance_monitor/performance_monitor-meta.js +1 -0
- package/dist/third-party/front_end/panels/performance_monitor/performance_monitor.js +1 -0
- package/dist/third-party/front_end/panels/profiler/profiler-legacy.js +1 -0
- package/dist/third-party/front_end/panels/profiler/profiler-meta.js +1 -0
- package/dist/third-party/front_end/panels/profiler/profiler.js +7 -0
- package/dist/third-party/front_end/panels/protocol_monitor/components/components.js +1 -0
- package/dist/third-party/front_end/panels/protocol_monitor/protocol_monitor-meta.js +1 -0
- package/dist/third-party/front_end/panels/protocol_monitor/protocol_monitor.js +1 -0
- package/dist/third-party/front_end/panels/recorder/components/components.js +1 -0
- package/dist/third-party/front_end/panels/recorder/controllers/controllers.js +1 -0
- package/dist/third-party/front_end/panels/recorder/converters/converters.js +1 -0
- package/dist/third-party/front_end/panels/recorder/extensions/extensions.js +1 -0
- package/dist/third-party/front_end/panels/recorder/injected/injected.generated.js +1 -0
- package/dist/third-party/front_end/panels/recorder/injected/injected.js +1 -0
- package/dist/third-party/front_end/panels/recorder/models/models.js +1 -0
- package/dist/third-party/front_end/panels/recorder/recorder-actions.js +1 -0
- package/dist/third-party/front_end/panels/recorder/recorder-meta.js +1 -0
- package/dist/third-party/front_end/panels/recorder/recorder.js +1 -0
- package/dist/third-party/front_end/panels/recorder/util/util.js +1 -0
- package/dist/third-party/front_end/panels/rn_welcome/rn_welcome-meta.js +1 -0
- package/dist/third-party/front_end/panels/rn_welcome/rn_welcome.js +1 -0
- package/dist/third-party/front_end/panels/screencast/screencast-meta.js +1 -0
- package/dist/third-party/front_end/panels/screencast/screencast.js +1 -0
- package/dist/third-party/front_end/panels/search/search-legacy.js +1 -0
- package/dist/third-party/front_end/panels/search/search.js +1 -0
- package/dist/third-party/front_end/panels/security/security-legacy.js +1 -0
- package/dist/third-party/front_end/panels/security/security-meta.js +1 -0
- package/dist/third-party/front_end/panels/security/security.js +1 -0
- package/dist/third-party/front_end/panels/sensors/sensors-meta.js +1 -0
- package/dist/third-party/front_end/panels/sensors/sensors.js +1 -0
- package/dist/third-party/front_end/panels/settings/components/components.js +1 -0
- package/dist/third-party/front_end/panels/settings/emulation/components/components.js +1 -0
- package/dist/third-party/front_end/panels/settings/emulation/emulation-meta.js +1 -0
- package/dist/third-party/front_end/panels/settings/emulation/emulation.js +1 -0
- package/dist/third-party/front_end/panels/settings/emulation/utils/utils.js +1 -0
- package/dist/third-party/front_end/panels/settings/settings-legacy.js +1 -0
- package/dist/third-party/front_end/panels/settings/settings-meta.js +1 -0
- package/dist/third-party/front_end/panels/settings/settings.js +1 -0
- package/dist/third-party/front_end/panels/snippets/snippets-legacy.js +1 -0
- package/dist/third-party/front_end/panels/snippets/snippets.js +1 -0
- package/dist/third-party/front_end/panels/sources/components/components.js +1 -0
- package/dist/third-party/front_end/panels/sources/sources-legacy.js +1 -0
- package/dist/third-party/front_end/panels/sources/sources-meta.js +1 -0
- package/dist/third-party/front_end/panels/sources/sources.js +1 -0
- package/dist/third-party/front_end/panels/timeline/timeline-legacy.js +1 -0
- package/dist/third-party/front_end/panels/timeline/timeline-meta.js +1 -0
- package/dist/third-party/front_end/panels/timeline/timeline.js +1 -0
- package/dist/third-party/front_end/panels/utils/utils.js +1 -0
- package/dist/third-party/front_end/panels/web_audio/graph_visualizer/graph_visualizer.js +1 -0
- package/dist/third-party/front_end/panels/web_audio/web_audio-legacy.js +1 -0
- package/dist/third-party/front_end/panels/web_audio/web_audio-meta.js +1 -0
- package/dist/third-party/front_end/panels/web_audio/web_audio.js +1 -0
- package/dist/third-party/front_end/panels/webauthn/webauthn-meta.js +1 -0
- package/dist/third-party/front_end/panels/webauthn/webauthn.js +1 -0
- package/dist/third-party/front_end/rn_inspector.html +20 -0
- package/dist/third-party/front_end/services/puppeteer/puppeteer.js +1 -0
- package/dist/third-party/front_end/services/tracing/tracing.js +1 -0
- package/dist/third-party/front_end/services/window_bounds/window_bounds.js +1 -0
- package/dist/third-party/front_end/third_party/acorn/acorn.js +1 -0
- package/dist/third-party/front_end/third_party/chromium/client-variations/client-variations.js +1 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/angular.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/codemirror.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/cpp.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/java.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/json.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/legacy.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/less.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/markdown.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/php.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/python.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/sass.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/svelte.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/vue.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/wast.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/chunk/xml.js +2 -0
- package/dist/third-party/front_end/third_party/codemirror.next/codemirror.next.js +2 -0
- package/dist/third-party/front_end/third_party/diff/diff-legacy.js +1 -0
- package/dist/third-party/front_end/third_party/diff/diff.js +1 -0
- package/dist/third-party/front_end/third_party/i18n/i18n.js +1 -0
- package/dist/third-party/front_end/third_party/intl-messageformat/intl-messageformat.js +15 -0
- package/dist/third-party/front_end/third_party/lighthouse/lighthouse-dt-bundle.js +1297 -0
- package/dist/third-party/front_end/third_party/lighthouse/report/report.js +222 -0
- package/dist/third-party/front_end/third_party/lit/lit.js +98 -0
- package/dist/third-party/front_end/third_party/marked/marked.js +1 -0
- package/dist/third-party/front_end/third_party/puppeteer/puppeteer.js +1 -0
- package/dist/third-party/front_end/third_party/puppeteer-replay/puppeteer-replay.js +1 -0
- package/dist/third-party/front_end/third_party/wasmparser/wasmparser.js +1 -0
- package/dist/third-party/front_end/ui/components/adorners/adorners.js +1 -0
- package/dist/third-party/front_end/ui/components/buttons/buttons.js +1 -0
- package/dist/third-party/front_end/ui/components/chrome_link/chrome_link.js +1 -0
- package/dist/third-party/front_end/ui/components/code_highlighter/code_highlighter.js +1 -0
- package/dist/third-party/front_end/ui/components/data_grid/data_grid.js +1 -0
- package/dist/third-party/front_end/ui/components/dialogs/dialogs.js +1 -0
- package/dist/third-party/front_end/ui/components/diff_view/diff_view.js +1 -0
- package/dist/third-party/front_end/ui/components/expandable_list/expandable_list.js +1 -0
- package/dist/third-party/front_end/ui/components/helpers/helpers.js +1 -0
- package/dist/third-party/front_end/ui/components/icon_button/icon_button.js +1 -0
- package/dist/third-party/front_end/ui/components/input/input.js +1 -0
- package/dist/third-party/front_end/ui/components/issue_counter/issue_counter.js +1 -0
- package/dist/third-party/front_end/ui/components/legacy_wrapper/legacy_wrapper.js +1 -0
- package/dist/third-party/front_end/ui/components/linear_memory_inspector/linear_memory_inspector-meta.js +1 -0
- package/dist/third-party/front_end/ui/components/linear_memory_inspector/linear_memory_inspector.js +1 -0
- package/dist/third-party/front_end/ui/components/linkifier/linkifier.js +1 -0
- package/dist/third-party/front_end/ui/components/markdown_view/markdown_view.js +1 -0
- package/dist/third-party/front_end/ui/components/menus/menus.js +1 -0
- package/dist/third-party/front_end/ui/components/node_text/node_text.js +1 -0
- package/dist/third-party/front_end/ui/components/panel_feedback/panel_feedback.js +1 -0
- package/dist/third-party/front_end/ui/components/panel_introduction_steps/panel_introduction_steps.js +1 -0
- package/dist/third-party/front_end/ui/components/render_coordinator/render_coordinator.js +1 -0
- package/dist/third-party/front_end/ui/components/report_view/report_view.js +1 -0
- package/dist/third-party/front_end/ui/components/request_link_icon/request_link_icon.js +1 -0
- package/dist/third-party/front_end/ui/components/settings/settings.js +1 -0
- package/dist/third-party/front_end/ui/components/srgb_overlay/srgb_overlay.js +1 -0
- package/dist/third-party/front_end/ui/components/survey_link/survey_link.js +1 -0
- package/dist/third-party/front_end/ui/components/text_editor/text_editor.js +1 -0
- package/dist/third-party/front_end/ui/components/text_prompt/text_prompt.js +1 -0
- package/dist/third-party/front_end/ui/components/tree_outline/tree_outline.js +1 -0
- package/dist/third-party/front_end/ui/components/two_states_counter/two_states_counter.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/color_picker/color_picker-legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/color_picker/color_picker.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/cookie_table/cookie_table-legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/cookie_table/cookie_table.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/data_grid/data_grid-legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/data_grid/data_grid.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/inline_editor/inline_editor-legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/inline_editor/inline_editor.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/object_ui/object_ui-legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/object_ui/object_ui-meta.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/object_ui/object_ui.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/perf_ui/perf_ui-legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/perf_ui/perf_ui-meta.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/perf_ui/perf_ui.js +12 -0
- package/dist/third-party/front_end/ui/legacy/components/quick_open/quick_open-legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/quick_open/quick_open-meta.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/quick_open/quick_open.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/source_frame/source_frame-legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/source_frame/source_frame-meta.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/source_frame/source_frame.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/utils/utils-legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/components/utils/utils.js +1 -0
- package/dist/third-party/front_end/ui/legacy/legacy-legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/legacy.js +1 -0
- package/dist/third-party/front_end/ui/legacy/theme_support/theme_support.js +1 -0
- package/dist/third-party/front_end/ui/legacy/utils/utils.js +1 -0
- package/dist/third-party/front_end/ui/lit-html/lit-html.js +1 -0
- package/dist/third-party/front_end/worker_app.html +20 -0
- package/index.js +15 -0
- package/package.json +25 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as e from"../../core/sdk/sdk.js";import*as t from"../../core/common/common.js";import*as s from"../../core/i18n/i18n.js";import*as r from"../../core/platform/platform.js";class o{custom;constructor(e){if(!e||"object"!=typeof e)throw"First parameter is expected to be an object";this.custom=new Map}static safeDate(e){const t=new Date(e);if(!Number.isNaN(t.getTime()))return t;throw"Invalid date format"}static safeNumber(e){const t=Number(e);if(!Number.isNaN(t))return t;throw"Casting to number results in NaN"}static optionalNumber(e){return void 0!==e?o.safeNumber(e):void 0}static optionalString(e){return void 0!==e?String(e):void 0}customAsString(e){const t=this.custom.get(e);if(t)return String(t)}customAsNumber(e){const t=this.custom.get(e);if(!t)return;const s=Number(t);return Number.isNaN(s)?void 0:s}customAsArray(e){const t=this.custom.get(e);if(t)return Array.isArray(t)?t:void 0}customInitiator(){return this.custom.get("initiator")}}class i extends o{version;creator;browser;pages;entries;comment;constructor(e){if(super(e),this.version=String(e.version),this.creator=new n(e.creator),this.browser=e.browser?new n(e.browser):void 0,this.pages=Array.isArray(e.pages)?e.pages.map((e=>new a(e))):[],!Array.isArray(e.entries))throw"log.entries is expected to be an array";this.entries=e.entries.map((e=>new u(e))),this.comment=o.optionalString(e.comment)}}class n extends o{name;version;comment;constructor(e){super(e),this.name=String(e.name),this.version=String(e.version),this.comment=o.optionalString(e.comment)}}class a extends o{startedDateTime;id;title;pageTimings;comment;constructor(e){super(e),this.startedDateTime=o.safeDate(e.startedDateTime),this.id=String(e.id),this.title=String(e.title),this.pageTimings=new c(e.pageTimings),this.comment=o.optionalString(e.comment)}}class c extends o{onContentLoad;onLoad;comment;constructor(e){super(e),this.onContentLoad=o.optionalNumber(e.onContentLoad),this.onLoad=o.optionalNumber(e.onLoad),this.comment=o.optionalString(e.comment)}}class u extends o{pageref;startedDateTime;time;request;response;cache;timings;serverIPAddress;connection;comment;constructor(e){super(e),this.pageref=o.optionalString(e.pageref),this.startedDateTime=o.safeDate(e.startedDateTime),this.time=o.safeNumber(e.time),this.request=new m(e.request),this.response=new d(e.response),this.cache={},this.timings=new S(e.timings),this.serverIPAddress=o.optionalString(e.serverIPAddress),this.connection=o.optionalString(e.connection),this.comment=o.optionalString(e.comment),this.custom.set("fromCache",o.optionalString(e._fromCache)),this.custom.set("initiator",this.importInitiator(e._initiator)),this.custom.set("priority",o.optionalString(e._priority)),this.custom.set("resourceType",o.optionalString(e._resourceType)),this.custom.set("webSocketMessages",this.importWebSocketMessages(e._webSocketMessages))}importInitiator(e){if("object"==typeof e)return new q(e)}importWebSocketMessages(e){if(!Array.isArray(e))return;const t=[];for(const s of e){if("object"!=typeof s)return;t.push(new w(s))}return t}}class m extends o{method;url;httpVersion;cookies;headers;queryString;postData;headersSize;bodySize;comment;constructor(e){super(e),this.method=String(e.method),this.url=String(e.url),this.httpVersion=String(e.httpVersion),this.cookies=Array.isArray(e.cookies)?e.cookies.map((e=>new l(e))):[],this.headers=Array.isArray(e.headers)?e.headers.map((e=>new p(e))):[],this.queryString=Array.isArray(e.queryString)?e.queryString.map((e=>new h(e))):[],this.postData=e.postData?new g(e.postData):void 0,this.headersSize=o.safeNumber(e.headersSize),this.bodySize=o.safeNumber(e.bodySize),this.comment=o.optionalString(e.comment)}}class d extends o{status;statusText;httpVersion;cookies;headers;content;redirectURL;headersSize;bodySize;comment;constructor(e){super(e),this.status=o.safeNumber(e.status),this.statusText=String(e.statusText),this.httpVersion=String(e.httpVersion),this.cookies=Array.isArray(e.cookies)?e.cookies.map((e=>new l(e))):[],this.headers=Array.isArray(e.headers)?e.headers.map((e=>new p(e))):[],this.content=new y(e.content),this.redirectURL=String(e.redirectURL),this.headersSize=o.safeNumber(e.headersSize),this.bodySize=o.safeNumber(e.bodySize),this.comment=o.optionalString(e.comment),this.custom.set("transferSize",o.optionalNumber(e._transferSize)),this.custom.set("error",o.optionalString(e._error))}}class l extends o{name;value;path;domain;expires;httpOnly;secure;comment;constructor(e){super(e),this.name=String(e.name),this.value=String(e.value),this.path=o.optionalString(e.path),this.domain=o.optionalString(e.domain),this.expires=e.expires?o.safeDate(e.expires):void 0,this.httpOnly=void 0!==e.httpOnly?Boolean(e.httpOnly):void 0,this.secure=void 0!==e.secure?Boolean(e.secure):void 0,this.comment=o.optionalString(e.comment)}}class p extends o{name;value;comment;constructor(e){super(e),this.name=String(e.name),this.value=String(e.value),this.comment=o.optionalString(e.comment)}}class h extends o{name;value;comment;constructor(e){super(e),this.name=String(e.name),this.value=String(e.value),this.comment=o.optionalString(e.comment)}}class g extends o{mimeType;params;text;comment;constructor(e){super(e),this.mimeType=String(e.mimeType),this.params=Array.isArray(e.params)?e.params.map((e=>new b(e))):[],this.text=String(e.text),this.comment=o.optionalString(e.comment)}}class b extends o{name;value;fileName;contentType;comment;constructor(e){super(e),this.name=String(e.name),this.value=o.optionalString(e.value),this.fileName=o.optionalString(e.fileName),this.contentType=o.optionalString(e.contentType),this.comment=o.optionalString(e.comment)}}class y extends o{size;compression;mimeType;text;encoding;comment;constructor(e){super(e),this.size=o.safeNumber(e.size),this.compression=o.optionalNumber(e.compression),this.mimeType=String(e.mimeType),this.text=o.optionalString(e.text),this.encoding=o.optionalString(e.encoding),this.comment=o.optionalString(e.comment)}}class S extends o{blocked;dns;connect;send;wait;receive;ssl;comment;constructor(e){super(e),this.blocked=o.optionalNumber(e.blocked),this.dns=o.optionalNumber(e.dns),this.connect=o.optionalNumber(e.connect),this.send=o.safeNumber(e.send),this.wait=o.safeNumber(e.wait),this.receive=o.safeNumber(e.receive),this.ssl=o.optionalNumber(e.ssl),this.comment=o.optionalString(e.comment),this.custom.set("blocked_queueing",o.optionalNumber(e._blocked_queueing)),this.custom.set("blocked_proxy",o.optionalNumber(e._blocked_proxy))}}class q extends o{type;url;lineNumber;requestId;stack;constructor(t){super(t),this.type=o.optionalString(t.type)??e.NetworkRequest.InitiatorType.Other,this.url=o.optionalString(t.url),this.lineNumber=o.optionalNumber(t.lineNumber),this.requestId=o.optionalString(t.requestId),t.stack&&(this.stack=new f(t.stack))}}class f extends o{description;callFrames;parent;parentId;constructor(e){super(e),this.callFrames=Array.isArray(e.callFrames)?e.callFrames.map((e=>e?new T(e):null)).filter(Boolean):[],e.parent&&(this.parent=new f(e.parent)),this.description=o.optionalString(e.description);const t=e.parentId;t&&(this.parentId={id:o.optionalString(t.id)??"",debuggerId:o.optionalString(t.debuggerId)})}}class T extends o{functionName;scriptId;url="";lineNumber=-1;columnNumber=-1;constructor(e){super(e),this.functionName=o.optionalString(e.functionName)??"",this.scriptId=o.optionalString(e.scriptId)??"",this.url=o.optionalString(e.url)??"",this.lineNumber=o.optionalNumber(e.lineNumber)??-1,this.columnNumber=o.optionalNumber(e.columnNumber)??-1}}class w extends o{time;opcode;data;type;constructor(e){super(e),this.time=o.optionalNumber(e.time),this.opcode=o.optionalNumber(e.opcode),this.data=o.optionalString(e.data),this.type=o.optionalString(e.type)}}var k=Object.freeze({__proto__:null,HARRoot:class extends o{log;constructor(e){super(e),this.log=new i(e.log)}},HARLog:i,HARPage:a,HAREntry:u,HARParam:b,HARTimings:S,HARInitiator:q,HARStack:f,HARCallFrame:T});class v{static requestsFromHARLog(t){const s=new Map;for(const e of t.pages)s.set(e.id,e);t.entries.sort(((e,t)=>e.startedDateTime.valueOf()-t.startedDateTime.valueOf()));const r=new Map,o=[];for(const i of t.entries){const t=i.pageref;let n=t?r.get(t):void 0;const a=n?n.mainRequest.url():i.request.url;let c=null;const u=i.customInitiator();u&&(c={type:u.type,url:u.url,lineNumber:u.lineNumber,requestId:u.requestId,stack:u.stack});const m=e.NetworkRequest.NetworkRequest.createWithoutBackendRequest("har-"+o.length,i.request.url,a,c),d=t?s.get(t):void 0;!n&&t&&d&&(n=v.buildPageLoad(d,m),r.set(t,n)),v.fillRequestFromHAREntry(m,i,n),n&&n.bindRequest(m),o.push(m)}return o}static buildPageLoad(t,s){const r=new e.PageLoad.PageLoad(s);return r.startTime=t.startedDateTime.valueOf(),r.contentLoadTime=1e3*Number(t.pageTimings.onContentLoad),r.loadTime=1e3*Number(t.pageTimings.onLoad),r}static fillRequestFromHAREntry(t,s,r){s.request.postData?t.setRequestFormData(!0,s.request.postData.text):t.setRequestFormData(!1,null),t.connectionId=s.connection||"",t.requestMethod=s.request.method,t.setRequestHeaders(s.request.headers),s.response.content.mimeType&&"x-unknown"!==s.response.content.mimeType&&(t.mimeType=s.response.content.mimeType),t.responseHeaders=s.response.headers,t.statusCode=s.response.status,t.statusText=s.response.statusText;let o=s.response.httpVersion.toLowerCase();"http/2.0"===o&&(o="h2"),t.protocol=o.replace(/^http\/2\.0?\+quic/,"http/2+quic");const i=s.startedDateTime.getTime()/1e3;t.setIssueTime(i,i);const n=s.response.content.size>0?s.response.content.size:0,a=s.response.headersSize>0?s.response.headersSize:0,c=s.response.bodySize>0?s.response.bodySize:0;t.resourceSize=n||a+c;let u=s.response.customAsNumber("transferSize");void 0===u&&(u=s.response.headersSize+s.response.bodySize),t.setTransferSize(u>=0?u:0);const m=s.customAsString("fromCache");"memory"===m?t.setFromMemoryCache():"disk"===m&&t.setFromDiskCache();const d=s.response.content.text,l={error:null,content:d||null,encoded:"base64"===s.response.content.encoding};t.setContentDataProvider((async()=>l)),v.setupTiming(t,i,s.time,s.timings),t.setRemoteAddress(s.serverIPAddress||"",80),t.setResourceType(v.getResourceType(t,s,r));const p=s.customAsString("priority");p&&Protocol.Network.ResourcePriority.hasOwnProperty(p)&&t.setPriority(p);const h=s.customAsArray("webSocketMessages");if(h)for(const s of h){if(void 0===s.time)continue;if(!Object.values(e.NetworkRequest.WebSocketFrameType).includes(s.type))continue;if(void 0===s.opcode)continue;if(void 0===s.data)continue;const r=s.type===e.NetworkRequest.WebSocketFrameType.Send;t.addFrame({time:s.time,text:s.data,opCode:s.opcode,mask:r,type:s.type})}t.finished=!0}static getResourceType(e,s,r){const o=s.customAsString("resourceType");if(o){const e=t.ResourceType.ResourceType.fromName(o);if(e)return e}if(r&&r.mainRequest===e)return t.ResourceType.resourceTypes.Document;const i=t.ResourceType.ResourceType.fromMimeType(s.response.content.mimeType);if(i!==t.ResourceType.resourceTypes.Other)return i;const n=t.ResourceType.ResourceType.fromURL(s.request.url);return n||t.ResourceType.resourceTypes.Other}static setupTiming(e,t,s,r){function o(e){return void 0===e||e<0?-1:(i+=e,i)}let i=r.blocked&&r.blocked>=0?r.blocked:0;const n=r.customAsNumber("blocked_proxy")||-1,a=r.customAsNumber("blocked_queueing")||-1,c=r.ssl&&r.ssl>=0?r.ssl:0;r.connect&&r.connect>0&&(r.connect-=c);const u={proxyStart:n>0?i-n:-1,proxyEnd:n>0?i:-1,requestTime:t+(a>0?a:0)/1e3,dnsStart:r.dns&&r.dns>=0?i:-1,dnsEnd:o(r.dns),connectStart:r.connect&&r.connect>=0?i:-1,connectEnd:o(r.connect)+c,sslStart:r.ssl&&r.ssl>=0?i:-1,sslEnd:o(r.ssl),workerStart:-1,workerReady:-1,workerFetchStart:-1,workerRespondWithSettled:-1,sendStart:r.send>=0?i:-1,sendEnd:o(r.send),pushStart:0,pushEnd:0,receiveHeadersStart:r.wait&&r.wait>=0?i:-1,receiveHeadersEnd:o(r.wait)};o(r.receive),e.timing=u,e.endTime=t+Math.max(s,i)/1e3}}var N=Object.freeze({__proto__:null,Importer:v});class x{static pseudoWallTime(e,t){return new Date(1e3*e.pseudoWallTime(t))}static async build(e){const t=new x,s=[];for(const t of e)s.push(R.build(t));const r=await Promise.all(s);return{version:"1.2",creator:t.creator(),pages:t.buildPages(e),entries:r}}creator(){const e=/AppleWebKit\/([^ ]+)/.exec(window.navigator.userAgent);return{name:"WebInspector",version:e?e[1]:"n/a"}}buildPages(t){const s=new Set,r=[];for(let o=0;o<t.length;++o){const i=t[o],n=e.PageLoad.PageLoad.forRequest(i);n&&!s.has(n.id)&&(s.add(n.id),r.push(this.convertPage(n,i)))}return r}convertPage(e,t){return{startedDateTime:x.pseudoWallTime(t,e.startTime).toJSON(),id:"page_"+e.id,title:e.url,pageTimings:{onContentLoad:this.pageEventTime(e,e.contentLoadTime),onLoad:this.pageEventTime(e,e.loadTime)}}}pageEventTime(e,t){const s=e.startTime;return-1===t||-1===s?-1:R.toMilliseconds(t-s)}}class R{request;constructor(e){this.request=e}static toMilliseconds(e){return-1===e?-1:1e3*e}static async build(s){const r=new R(s);let o=r.request.remoteAddress();const i=o.lastIndexOf(":");-1!==i&&(o=o.substr(0,i));const n=r.buildTimings();let a=0;for(const e of[n.blocked,n.dns,n.connect,n.send,n.wait,n.receive])a+=Math.max(e,0);const c=r.request.initiator();let u=null;c&&(u={type:c.type},void 0!==c.url&&(u.url=c.url),void 0!==c.requestId&&(u.requestId=c.requestId),void 0!==c.lineNumber&&(u.lineNumber=c.lineNumber),c.stack&&(u.stack=c.stack));const m={_fromCache:void 0,_initiator:u,_priority:r.request.priority(),_resourceType:r.request.resourceType().name(),_webSocketMessages:void 0,cache:{},connection:void 0,pageref:void 0,request:await r.buildRequest(),response:r.buildResponse(),serverIPAddress:o.replace(/\[\]/g,""),startedDateTime:x.pseudoWallTime(r.request,r.request.issueTime()).toJSON(),time:a,timings:n};r.request.cached()?m._fromCache=r.request.cachedInMemory()?"memory":"disk":delete m._fromCache,"0"!==r.request.connectionId?m.connection=r.request.connectionId:delete m.connection;const d=e.PageLoad.PageLoad.forRequest(r.request);if(d?m.pageref="page_"+d.id:delete m.pageref,r.request.resourceType()===t.ResourceType.resourceTypes.WebSocket){const e=[];for(const t of r.request.frames())e.push({type:t.type,time:t.time,opcode:t.opCode,data:t.text});m._webSocketMessages=e}else delete m._webSocketMessages;return m}async buildRequest(){const e=this.request.requestHeadersText(),t={method:this.request.requestMethod,url:this.buildRequestURL(this.request.url()),httpVersion:this.request.requestHttpVersion(),headers:this.request.requestHeaders(),queryString:this.buildParameters(this.request.queryParameters||[]),cookies:this.buildCookies(this.request.includedRequestCookies()),headersSize:e?e.length:-1,bodySize:await this.requestBodySize(),postData:void 0},s=await this.buildPostData();return s?t.postData=s:delete t.postData,t}buildResponse(){const e=this.request.responseHeadersText;return{status:this.request.statusCode,statusText:this.request.statusText,httpVersion:this.request.responseHttpVersion(),headers:this.request.responseHeaders,cookies:this.buildCookies(this.request.responseCookies),content:this.buildContent(),redirectURL:this.request.responseHeaderValue("Location")||"",headersSize:e?e.length:-1,bodySize:this.responseBodySize,_transferSize:this.request.transferSize,_error:this.request.localizedFailDescription}}buildContent(){const e={size:this.request.resourceSize,mimeType:this.request.mimeType||"x-unknown",compression:void 0},t=this.responseCompression;return"number"==typeof t?e.compression=t:delete e.compression,e}buildTimings(){const e=this.request.timing,t=this.request.issueTime(),s=this.request.startTime,r={blocked:-1,dns:-1,ssl:-1,connect:-1,send:0,wait:0,receive:0,_blocked_queueing:-1,_blocked_proxy:void 0},o=t<s?s-t:-1;r.blocked=R.toMilliseconds(o),r._blocked_queueing=R.toMilliseconds(o);let i=0;if(e){const t=d([e.dnsStart,e.connectStart,e.sendStart]);t!==1/0&&(r.blocked+=t),-1!==e.proxyEnd&&(r._blocked_proxy=e.proxyEnd-e.proxyStart),r._blocked_proxy&&r._blocked_proxy>r.blocked&&(r.blocked=r._blocked_proxy);const s=e.dnsEnd>=0?t:0,o=e.dnsEnd>=0?e.dnsEnd:-1;r.dns=o-s;const n=e.sslEnd>0?e.sslStart:0,a=e.sslEnd>0?e.sslEnd:-1;r.ssl=a-n;const c=e.connectEnd>=0?d([o,t]):0,u=e.connectEnd>=0?e.connectEnd:-1;r.connect=u-c;const m=e.sendEnd>=0?Math.max(u,o,t):0,l=e.sendEnd>=0?e.sendEnd:0;r.send=l-m,r.send<0&&(r.send=0),i=Math.max(l,u,a,o,t,0)}else if(-1===this.request.responseReceivedTime)return r.blocked=R.toMilliseconds(this.request.endTime-t),r;const n=e?e.requestTime:s,a=i,c=R.toMilliseconds(this.request.responseReceivedTime-n);r.wait=c-a;const u=c,m=R.toMilliseconds(this.request.endTime-n);return r.receive=Math.max(m-u,0),r;function d(e){return e.reduce(((e,t)=>t>=0&&t<e?t:e),1/0)}}async buildPostData(){const e=await this.request.requestFormData();if(!e)return null;const t={mimeType:this.request.requestContentType()||"",text:e,params:void 0},s=await this.request.formParameters();return s?t.params=this.buildParameters(s):delete t.params,t}buildParameters(e){return e.slice()}buildRequestURL(e){return t.ParsedURL.ParsedURL.split(e,"#",2)[0]}buildCookies(e){return e.map(this.buildCookie.bind(this))}buildCookie(e){const t={name:e.name(),value:e.value(),path:e.path(),domain:e.domain(),expires:e.expiresDate(x.pseudoWallTime(this.request,this.request.startTime)),httpOnly:e.httpOnly(),secure:e.secure(),sameSite:void 0};return e.sameSite()?t.sameSite=e.sameSite():delete t.sameSite,t}async requestBodySize(){const e=await this.request.requestFormData();return e?(new TextEncoder).encode(e).length:0}get responseBodySize(){return this.request.cached()||304===this.request.statusCode?0:this.request.responseHeadersText?this.request.transferSize-this.request.responseHeadersText.length:-1}get responseCompression(){if(!this.request.cached()&&304!==this.request.statusCode&&206!==this.request.statusCode&&this.request.responseHeadersText)return this.request.resourceSize-this.responseBodySize}}var _=Object.freeze({__proto__:null,Log:x,Entry:R});const A={collectingContent:"Collecting content…",writingFile:"Writing file…"},z=s.i18n.registerUIStrings("models/har/Writer.ts",A),C=s.i18n.getLocalizedString.bind(void 0,z);class D{static async write(e,s,r){const o=new t.Progress.CompositeProgress(r),i=await D.harStringForRequests(s,o);r.isCanceled()||await D.writeToStream(e,o,i)}static async harStringForRequests(e,t){const s=t.createSubProgress();s.setTitle(C(A.collectingContent)),s.setTotalWork(e.length),e.sort(((e,t)=>e.issueTime()-t.issueTime()));const o=await x.build(e),i=[];for(let t=0;t<e.length;t++){const s=e[t].contentData();i.push(s.then(n.bind(null,o.entries[t])))}return await Promise.all(i),s.done(),s.isCanceled()?"":JSON.stringify({log:o},null,I);function n(e,t){s.incrementWorked();let o=t.encoded;if(null!==t.content){let s=t.content;s&&!o&&function(e){for(let s=0;s<e.length;s++)if(!((t=e.charCodeAt(s))<55296||t>=57344&&t<64976||t>65007&&t<=1114111&&65534!=(65534&t)))return!0;var t;return!1}(s)&&(s=r.StringUtilities.toBase64(s),o=!0),e.response.content.text=s}o&&(e.response.content.encoding="base64")}}static async writeToStream(e,t,s){const r=t.createSubProgress();r.setTitle(C(A.writingFile)),r.setTotalWork(s.length);for(let t=0;t<s.length&&!r.isCanceled();t+=P){const o=s.substr(t,P);await e.write(o),r.incrementWorked(o.length)}r.done()}}const I=2,P=1e5;var L=Object.freeze({__proto__:null,Writer:D,jsonIndent:I,chunkSize:P});export{k as HARFormat,N as Importer,_ as Log,L as Writer};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as e from"./heap_snapshot_model.js";self.HeapSnapshotModel=self.HeapSnapshotModel||{},HeapSnapshotModel=HeapSnapshotModel||{},HeapSnapshotModel.HeapSnapshotProgressEvent=e.HeapSnapshotModel.HeapSnapshotProgressEvent,HeapSnapshotModel.baseSystemDistance=e.HeapSnapshotModel.baseSystemDistance,HeapSnapshotModel.AllocationNodeCallers=e.HeapSnapshotModel.AllocationNodeCallers,HeapSnapshotModel.SerializedAllocationNode=e.HeapSnapshotModel.SerializedAllocationNode,HeapSnapshotModel.AllocationStackFrame=e.HeapSnapshotModel.AllocationStackFrame,HeapSnapshotModel.Node=e.HeapSnapshotModel.Node,HeapSnapshotModel.Edge=e.HeapSnapshotModel.Edge,HeapSnapshotModel.Aggregate=e.HeapSnapshotModel.Aggregate,HeapSnapshotModel.AggregateForDiff=e.HeapSnapshotModel.AggregateForDiff,HeapSnapshotModel.Diff=e.HeapSnapshotModel.Diff,HeapSnapshotModel.DiffForClass=e.HeapSnapshotModel.DiffForClass,HeapSnapshotModel.ComparatorConfig=e.HeapSnapshotModel.ComparatorConfig,HeapSnapshotModel.WorkerCommand=e.HeapSnapshotModel.WorkerCommand,HeapSnapshotModel.ItemsRange=e.HeapSnapshotModel.ItemsRange,HeapSnapshotModel.StaticData=e.HeapSnapshotModel.StaticData,HeapSnapshotModel.Statistics=e.HeapSnapshotModel.Statistics,HeapSnapshotModel.NodeFilter=e.HeapSnapshotModel.NodeFilter,HeapSnapshotModel.SearchConfig=e.HeapSnapshotModel.SearchConfig,HeapSnapshotModel.Samples=e.HeapSnapshotModel.Samples,HeapSnapshotModel.Location=e.HeapSnapshotModel.Location;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=Object.freeze({__proto__:null,HeapSnapshotProgressEvent:{Update:"ProgressUpdate",BrokenSnapshot:"BrokenSnapshot"},baseSystemDistance:1e8,AllocationNodeCallers:class{nodesWithSingleCaller;branchingCallers;constructor(e,t){this.nodesWithSingleCaller=e,this.branchingCallers=t}},SerializedAllocationNode:class{id;name;scriptName;scriptId;line;column;count;size;liveCount;liveSize;hasChildren;constructor(e,t,s,i,d,o,n,a,c,r,l){this.id=e,this.name=t,this.scriptName=s,this.scriptId=i,this.line=d,this.column=o,this.count=n,this.size=a,this.liveCount=c,this.liveSize=r,this.hasChildren=l}},AllocationStackFrame:class{functionName;scriptName;scriptId;line;column;constructor(e,t,s,i,d){this.functionName=e,this.scriptName=t,this.scriptId=s,this.line=i,this.column=d}},Node:class{id;name;distance;nodeIndex;retainedSize;selfSize;type;canBeQueried;detachedDOMTreeNode;isAddedNotRemoved;constructor(e,t,s,i,d,o,n){this.id=e,this.name=t,this.distance=s,this.nodeIndex=i,this.retainedSize=d,this.selfSize=o,this.type=n,this.canBeQueried=!1,this.detachedDOMTreeNode=!1,this.isAddedNotRemoved=null}},Edge:class{name;node;type;edgeIndex;isAddedNotRemoved;constructor(e,t,s,i){this.name=e,this.node=t,this.type=s,this.edgeIndex=i,this.isAddedNotRemoved=null}},Aggregate:class{count;distance;self;maxRet;type;name;idxs;constructor(){}},AggregateForDiff:class{indexes;ids;selfSizes;constructor(){this.indexes=[],this.ids=[],this.selfSizes=[]}},Diff:class{addedCount;removedCount;addedSize;removedSize;deletedIndexes;addedIndexes;countDelta;sizeDelta;constructor(){this.addedCount=0,this.removedCount=0,this.addedSize=0,this.removedSize=0,this.deletedIndexes=[],this.addedIndexes=[]}},DiffForClass:class{addedCount;removedCount;addedSize;removedSize;deletedIndexes;addedIndexes;countDelta;sizeDelta;constructor(){}},ComparatorConfig:class{fieldName1;ascending1;fieldName2;ascending2;constructor(e,t,s,i){this.fieldName1=e,this.ascending1=t,this.fieldName2=s,this.ascending2=i}},WorkerCommand:class{callId;disposition;objectId;newObjectId;methodName;methodArguments;source;constructor(){}},ItemsRange:class{startPosition;endPosition;totalLength;items;constructor(e,t,s,i){this.startPosition=e,this.endPosition=t,this.totalLength=s,this.items=i}},StaticData:class{nodeCount;rootNodeIndex;totalSize;maxJSObjectId;constructor(e,t,s,i){this.nodeCount=e,this.rootNodeIndex=t,this.totalSize=s,this.maxJSObjectId=i}},Statistics:class{total;v8heap;native;code;jsArrays;strings;system;constructor(){}},NodeFilter:class{minNodeId;maxNodeId;allocationNodeId;constructor(e,t){this.minNodeId=e,this.maxNodeId=t}equals(e){return this.minNodeId===e.minNodeId&&this.maxNodeId===e.maxNodeId&&this.allocationNodeId===e.allocationNodeId}},SearchConfig:class{query;caseSensitive;isRegex;shouldJump;jumpBackward;constructor(e,t,s,i,d){this.query=e,this.caseSensitive=t,this.isRegex=s,this.shouldJump=i,this.jumpBackward=d}toSearchRegex(e){throw new Error("Unsupported operation on search config")}},Samples:class{timestamps;lastAssignedIds;sizes;constructor(e,t,s){this.timestamps=e,this.lastAssignedIds=t,this.sizes=s}},Location:class{scriptId;lineNumber;columnNumber;constructor(e,t,s){this.scriptId=e,this.lineNumber=t,this.columnNumber=s}}});export{e as HeapSnapshotModel};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# An iframe navigation to a document with a Cross-Origin Opener Policy was blocked
|
|
2
|
+
|
|
3
|
+
A document with a Cross-Origin Opener Policy (COOP) was blocked from loading in an iframe, because the iframe specifies a sandbox attribute.
|
|
4
|
+
This protects COOP-enabled documents from inheriting properties from its opener.
|
package/dist/third-party/front_end/models/issues_manager/descriptions/CoepCorpNotSameOrigin.md
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Specify a more permissive Cross-Origin Resource Policy to prevent a resource from being blocked
|
|
2
|
+
|
|
3
|
+
Your site tries to access an external resource that only allows same-origin usage.
|
|
4
|
+
This behavior prevents a document from loading any non-same-origin resources which don’t explicitly grant permission to be loaded.
|
|
5
|
+
|
|
6
|
+
To solve this, add the following to the resource’s HTML response header:
|
|
7
|
+
* `Cross-Origin-Resource-Policy: same-site` if the resource and your site are served from the same site.
|
|
8
|
+
* `Cross-Origin-Resource-Policy: cross-origin` if the resource is served from another location than your website. ⚠️If you set this header, any website can embed this resource.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Specify a Cross-Origin Resource Policy to prevent a resource from being blocked
|
|
2
|
+
|
|
3
|
+
Because your site has the Cross-Origin Embedder Policy (COEP) enabled, each
|
|
4
|
+
resource must specify a suitable Cross-Origin Resource Policy (CORP). This
|
|
5
|
+
behavior prevents a document from loading cross-origin resources which don’t
|
|
6
|
+
explicitly grant permission to be loaded.
|
|
7
|
+
|
|
8
|
+
To solve this, add the following to the resource’ response header:
|
|
9
|
+
* `Cross-Origin-Resource-Policy: same-site` if the resource and your site are
|
|
10
|
+
served from the same site.
|
|
11
|
+
* `Cross-Origin-Resource-Policy: cross-origin` if the resource is served from
|
|
12
|
+
another location than your website. ⚠️If you set this header, any website can
|
|
13
|
+
embed this resource.
|
|
14
|
+
|
|
15
|
+
Alternatively, the document can use the variant: `Cross-Origin-Embedder-Policy:
|
|
16
|
+
credentialless` instead of `require-corp`. It allows loading the resource,
|
|
17
|
+
despite the missing CORP header, at the cost of requesting it without
|
|
18
|
+
credentials like Cookies.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Specify a more permissive Cross-Origin Resource Policy to prevent a resource from being blocked
|
|
2
|
+
|
|
3
|
+
Your site tries to access an external resource that only allows same-site usage.
|
|
4
|
+
This behavior prevents a document from loading any non-same-site resources which don’t explicitly grant permission to be loaded.
|
|
5
|
+
|
|
6
|
+
To solve this, add the following to the resource’s HTML response header: `Cross-Origin-Resource-Policy: cross-origin`
|
|
7
|
+
⚠️If you set this header, any website can embed this resource.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Specify a Cross-Origin Embedder Policy to prevent this frame from being blocked
|
|
2
|
+
|
|
3
|
+
Because your site has the Cross-Origin Embedder Policy (COEP) enabled, each
|
|
4
|
+
embedded iframe must also specify this policy. This behavior protects private
|
|
5
|
+
data from being exposed to untrusted third party sites.
|
|
6
|
+
|
|
7
|
+
To solve this, add one of following to the embedded frame’s HTML response
|
|
8
|
+
header:
|
|
9
|
+
* `Cross-Origin-Embedder-Policy: require-corp`
|
|
10
|
+
* `Cross-Origin-Embedder-Policy: credentialless` (Chrome > 96)
|
package/dist/third-party/front_end/models/issues_manager/descriptions/CompatibilityModeQuirks.md
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Page layout may be unexpected due to Quirks Mode
|
|
2
|
+
|
|
3
|
+
One or more documents in this page is in Quirks Mode, which will render the affected document(s) with quirks incompatible with the current HTML and CSS specifications.
|
|
4
|
+
|
|
5
|
+
Quirks Mode exists mostly due to historical reasons. If this is not intentional, you can [add or modify the DOCTYPE to be `<!DOCTYPE html>`](issueQuirksModeDoctype) to render the page in No Quirks Mode.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Ensure cookie attribute values don’t exceed 1024 characters
|
|
2
|
+
|
|
3
|
+
Cookie attribute values exceeding 1024 characters in size will result in the attribute being ignored. This could lead to unexpected behavior since the cookie will be processed as if the offending attribute / attribute value pair were not present.
|
|
4
|
+
|
|
5
|
+
Resolve this issue by ensuring that cookie attribute values don’t exceed 1024 characters.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Users may have difficulties reading text content due to insufficient color contrast
|
|
2
|
+
|
|
3
|
+
Low-contrast text is difficult or impossible for users to read. A [minimum contrast ratio (AA) of 4.5](issuesContrastWCAG21AA) is recommended for all text. Since font size and weight affect color perception, an exception is made for very large or bold text — in this case, a contrast ratio of 3.0 is allowed. The [enhanced conformance level (AAA)](issuesContrastWCAG21AAA) requires the contrast ratio to be above 7.0 for regular text and 4.5 for large text.
|
|
4
|
+
|
|
5
|
+
Update colors or change the font size or weight to achieve sufficient contrast. You can use the [“Suggest color” feature](issuesContrastSuggestColor) in the DevTools color picker to automatically select a better text color.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Migrate entirely to HTTPS to have cookies sent to same-site subresources
|
|
2
|
+
|
|
3
|
+
A cookie was not sent to {PLACEHOLDER_destination} origin from {PLACEHOLDER_origin} context.
|
|
4
|
+
Because this cookie would have been sent across schemes on the same site, it was not sent.
|
|
5
|
+
This behavior enhances the `SameSite` attribute’s protection of user data from request forgery by network attackers.
|
|
6
|
+
|
|
7
|
+
Resolve this issue by migrating your site (as defined by the eTLD+1) entirely to HTTPS.
|
|
8
|
+
It is also recommended to mark the cookie with the `Secure` attribute if that is not already the case.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Migrate entirely to HTTPS to allow cookies to be set by same-site subresources
|
|
2
|
+
|
|
3
|
+
A cookie was not set by {PLACEHOLDER_origin} origin in {PLACEHOLDER_destination} context.
|
|
4
|
+
Because this cookie would have been set across schemes on the same site, it was blocked.
|
|
5
|
+
This behavior enhances the `SameSite` attribute’s protection of user data from request forgery by network attackers.
|
|
6
|
+
|
|
7
|
+
Resolve this issue by migrating your site (as defined by the eTLD+1) entirely to HTTPS.
|
|
8
|
+
It is also recommended to mark the cookie with the `Secure` attribute if that is not already the case.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Migrate entirely to HTTPS to have cookies sent on same-site requests
|
|
2
|
+
|
|
3
|
+
A cookie was not sent to {PLACEHOLDER_destination} origin from {PLACEHOLDER_origin} context on a navigation.
|
|
4
|
+
Because this cookie would have been sent across schemes on the same site, it was not sent.
|
|
5
|
+
This behavior enhances the `SameSite` attribute’s protection of user data from request forgery by network attackers.
|
|
6
|
+
|
|
7
|
+
Resolve this issue by migrating your site (as defined by the eTLD+1) entirely to HTTPS.
|
|
8
|
+
It is also recommended to mark the cookie with the `Secure` attribute if that is not already the case.
|
package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteInvalidSameParty.md
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Mark SameParty cookies as Secure and do not use SameSite=Strict for SameParty cookies
|
|
2
|
+
|
|
3
|
+
Cookies marked with `SameParty` must also be marked with `Secure`. In addition, cookies marked
|
|
4
|
+
with `SameParty` cannot use `SameSite=Strict`.
|
|
5
|
+
|
|
6
|
+
Resolve this issue by updating the attributes of the cookie:
|
|
7
|
+
* Remove `SameParty` if the cookie should only be used by the same site but not the same first-party set
|
|
8
|
+
* Remove `SameSite=Strict` and specify `Secure` if the cookie should be available to all sites of the same first-party set
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Mark cross-site cookies as Secure to allow them to be sent in cross-site requests
|
|
2
|
+
|
|
3
|
+
Cookies marked with `SameSite=None` must also be marked with `Secure` to get sent in cross-site requests.
|
|
4
|
+
This behavior protects user data from being sent over an insecure connection.
|
|
5
|
+
|
|
6
|
+
Resolve this issue by updating the attributes of the cookie:
|
|
7
|
+
* Specify `SameSite=None` and `Secure` if the cookie should be sent in cross-site requests. This enables third-party use.
|
|
8
|
+
* Specify `SameSite=Strict` or `SameSite=Lax` if the cookie should not be sent in cross-site requests.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Mark cross-site cookies as Secure to allow setting them in cross-site contexts
|
|
2
|
+
|
|
3
|
+
Cookies marked with `SameSite=None` must also be marked with `Secure` to allow setting them in a cross-site context.
|
|
4
|
+
This behavior protects user data from being sent over an insecure connection.
|
|
5
|
+
|
|
6
|
+
Resolve this issue by updating the attributes of the cookie:
|
|
7
|
+
* Specify `SameSite=None` and `Secure` if the cookie is intended to be set in cross-site contexts. Note that only cookies sent over HTTPS may use the `Secure` attribute.
|
|
8
|
+
* Specify `SameSite=Strict` or `SameSite=Lax` if the cookie should not be set by cross-site requests.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Mark cross-site cookies as Secure to allow them to be sent in cross-site requests
|
|
2
|
+
|
|
3
|
+
In a future version of the browser, cookies marked with `SameSite=None` must also be marked with `Secure` to get sent in cross-site requests.
|
|
4
|
+
This behavior protects user data from being sent over an insecure connection.
|
|
5
|
+
|
|
6
|
+
Resolve this issue by updating the attributes of the cookie:
|
|
7
|
+
* Specify `SameSite=None` and `Secure` if the cookie should be sent in cross-site requests. This enables third-party use.
|
|
8
|
+
* Specify `SameSite=Strict` or `SameSite=Lax` if the cookie should not be sent in cross-site requests.
|
package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureWarnSet.md
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Mark cross-site cookies as Secure to allow setting them in cross-site contexts
|
|
2
|
+
|
|
3
|
+
In a future version of the browser, cookies marked with `SameSite=None` must also be marked with `Secure` to allow setting them in a cross-site context.
|
|
4
|
+
This behavior protects user data from being sent over an insecure connection.
|
|
5
|
+
|
|
6
|
+
Resolve this issue by updating the attributes of the cookie:
|
|
7
|
+
* Specify `SameSite=None` and `Secure` if the cookie is intended to be set in cross-site contexts. Note that only cookies sent over HTTPS may use the `Secure` attribute.
|
|
8
|
+
* Specify `SameSite=Strict` or `SameSite=Lax` if the cookie should not be set by cross-site requests.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Indicate whether to send a cookie in a cross-site request by specifying its SameSite attribute
|
|
2
|
+
|
|
3
|
+
Because a cookie’s `SameSite` attribute was not set or is invalid, it defaults to `SameSite=Lax`,
|
|
4
|
+
which will prevent the cookie from being sent in a cross-site request in a future version of the browser.
|
|
5
|
+
This behavior protects user data from accidentally leaking to third parties and cross-site request forgery.
|
|
6
|
+
|
|
7
|
+
Resolve this issue by updating the attributes of the cookie:
|
|
8
|
+
* Specify `SameSite=None` and `Secure` if the cookie should be sent in cross-site requests. This enables third-party use.
|
|
9
|
+
* Specify `SameSite=Strict` or `SameSite=Lax` if the cookie should not be sent in cross-site requests.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Indicate whether a cookie is intended to be set in cross-site context by specifying its SameSite attribute
|
|
2
|
+
|
|
3
|
+
Because a cookie’s `SameSite` attribute was not set or is invalid, it defaults to `SameSite=Lax`,
|
|
4
|
+
which will prevents the cookie from being set in a cross-site context in a future version of the browser.
|
|
5
|
+
This behavior protects user data from accidentally leaking to third parties and cross-site request forgery.
|
|
6
|
+
|
|
7
|
+
Resolve this issue by updating the attributes of the cookie:
|
|
8
|
+
* Specify `SameSite=None` and `Secure` if the cookie is intended to be set in cross-site contexts. Note that only cookies sent over HTTPS may use the `Secure` attribute.
|
|
9
|
+
* Specify `SameSite=Strict` or `SameSite=Lax` if the cookie should not be set by cross-site requests.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Indicate whether to send a cookie in a cross-site request by specifying its SameSite attribute
|
|
2
|
+
|
|
3
|
+
Because a cookie’s `SameSite` attribute was not set or is invalid, it defaults to `SameSite=Lax`,
|
|
4
|
+
which prevents the cookie from being sent in a cross-site request.
|
|
5
|
+
This behavior protects user data from accidentally leaking to third parties and cross-site request forgery.
|
|
6
|
+
|
|
7
|
+
Resolve this issue by updating the attributes of the cookie:
|
|
8
|
+
* Specify `SameSite=None` and `Secure` if the cookie should be sent in cross-site requests. This enables third-party use.
|
|
9
|
+
* Specify `SameSite=Strict` or `SameSite=Lax` if the cookie should not be sent in cross-site requests.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Indicate whether a cookie is intended to be set in a cross-site context by specifying its SameSite attribute
|
|
2
|
+
|
|
3
|
+
Because a cookie’s `SameSite` attribute was not set or is invalid, it defaults to `SameSite=Lax`,
|
|
4
|
+
which prevents the cookie from being set in a cross-site context.
|
|
5
|
+
This behavior protects user data from accidentally leaking to third parties and cross-site request forgery.
|
|
6
|
+
|
|
7
|
+
Resolve this issue by updating the attributes of the cookie:
|
|
8
|
+
* Specify `SameSite=None` and `Secure` if the cookie is intended to be set in cross-site contexts. Note that only cookies sent over HTTPS may use the `Secure` attribute.
|
|
9
|
+
* Specify `SameSite=Strict` or `SameSite=Lax` if the cookie should not be set by cross-site requests.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Migrate entirely to HTTPS to continue having cookies sent to same-site subresources
|
|
2
|
+
|
|
3
|
+
A cookie is being sent to {PLACEHOLDER_destination} origin from {PLACEHOLDER_origin} context.
|
|
4
|
+
Because this cookie is being sent across schemes on the same site, it will not be sent in a future version of Chrome.
|
|
5
|
+
This behavior enhances the `SameSite` attribute’s protection of user data from request forgery by network attackers.
|
|
6
|
+
|
|
7
|
+
Resolve this issue by migrating your site (as defined by the eTLD+1) entirely to HTTPS.
|
|
8
|
+
It is also recommended to mark the cookie with the `Secure` attribute if that is not already the case.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Migrate entirely to HTTPS to continue allowing cookies to be set by same-site subresources
|
|
2
|
+
|
|
3
|
+
A cookie is being set by {PLACEHOLDER_origin} origin in {PLACEHOLDER_destination} context.
|
|
4
|
+
Because this cookie is being set across schemes on the same site, it will be blocked in a future version of Chrome.
|
|
5
|
+
This behavior enhances the `SameSite` attribute’s protection of user data from request forgery by network attackers.
|
|
6
|
+
|
|
7
|
+
Resolve this issue by migrating your site (as defined by the eTLD+1) entirely to HTTPS.
|
|
8
|
+
It is also recommended to mark the cookie with the `Secure` attribute if that is not already the case.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Migrate entirely to HTTPS to continue having cookies sent on same-site requests
|
|
2
|
+
|
|
3
|
+
A cookie is being sent to {PLACEHOLDER_destination} origin from {PLACEHOLDER_origin} context on a navigation.
|
|
4
|
+
Because this cookie is being sent across schemes on the same site, it will not be sent in a future version of Chrome.
|
|
5
|
+
This behavior enhances the `SameSite` attribute’s protection of user data from request forgery by network attackers.
|
|
6
|
+
|
|
7
|
+
Resolve this issue by migrating your site (as defined by the eTLD+1) entirely to HTTPS.
|
|
8
|
+
It is also recommended to mark the cookie with the `Secure` attribute if that is not already the case.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Ensure that the attribution registration context is secure
|
|
2
|
+
|
|
3
|
+
This page tried to register a source or trigger using the Attribution Reporting
|
|
4
|
+
API but failed because the page that initiated the registration was not secure.
|
|
5
|
+
|
|
6
|
+
The registration context must use HTTPS unless it is `localhost` or
|
|
7
|
+
`127.0.0.1`.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# An attribution OS source registration was ignored because the request was ineligible
|
|
2
|
+
|
|
3
|
+
This page tried to register an OS source using the Attribution Reporting API,
|
|
4
|
+
but the request was ineligible to do so, so the OS source registration was
|
|
5
|
+
ignored.
|
|
6
|
+
|
|
7
|
+
A request is eligible for OS source registration if it has all of the following:
|
|
8
|
+
|
|
9
|
+
- An `Attribution-Reporting-Eligible` header whose value is a structured
|
|
10
|
+
dictionary that contains the key `navigation-source` or `event-source`
|
|
11
|
+
- An `Attribution-Reporting-Support` header whose value is a structured
|
|
12
|
+
dictionary that contains the key `os`
|
|
13
|
+
|
|
14
|
+
Otherwise, any `Attribution-Reporting-Register-OS-Source` response header will
|
|
15
|
+
be ignored.
|
|
16
|
+
|
|
17
|
+
Additionally, a single HTTP redirect chain may register only all sources or all
|
|
18
|
+
triggers, not a combination of both.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# An attribution OS trigger registration was ignored because the request was ineligible
|
|
2
|
+
|
|
3
|
+
This page tried to register an OS trigger using the Attribution Reporting API,
|
|
4
|
+
but the request was ineligible to do so, so the OS trigger registration was
|
|
5
|
+
ignored.
|
|
6
|
+
|
|
7
|
+
A request is eligible for OS trigger registration if it has all of the following:
|
|
8
|
+
|
|
9
|
+
- No `Attribution-Reporting-Eligible` header or an
|
|
10
|
+
`Attribution-Reporting-Eligible` header whose value is a structured
|
|
11
|
+
dictionary that contains the key `trigger`
|
|
12
|
+
- An `Attribution-Reporting-Support` header whose value is a structured
|
|
13
|
+
dictionary that contains the key `os`
|
|
14
|
+
|
|
15
|
+
Otherwise, any `Attribution-Reporting-Register-OS-Trigger` response header will
|
|
16
|
+
be ignored.
|
|
17
|
+
|
|
18
|
+
Additionally, a single HTTP redirect chain may register only all sources or all
|
|
19
|
+
triggers, not a combination of both.
|
package/dist/third-party/front_end/models/issues_manager/descriptions/arPermissionPolicyDisabled.md
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# The Attribution Reporting API can’t be used because Permissions Policy has been disabled
|
|
2
|
+
|
|
3
|
+
This page tried to use the Attribution Reporting API but failed because the
|
|
4
|
+
`attribution-reporting` Permission Policy was explicitly disabled.
|
|
5
|
+
|
|
6
|
+
This API is currently enabled by default for top-level and cross-origin frames,
|
|
7
|
+
but it is still possible for frames to have the permission disabled by their
|
|
8
|
+
parent, e.g. with `<iframe src="…" allow="attribution-reporting 'none'">`.
|
package/dist/third-party/front_end/models/issues_manager/descriptions/arSourceAndTriggerHeaders.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Ensure that attribution responses contain either source or trigger, not both
|
|
2
|
+
|
|
3
|
+
This page tried to register a source and a trigger in the same HTTP response
|
|
4
|
+
using the Attribution Reporting API, which is prohibited.
|
|
5
|
+
|
|
6
|
+
The corresponding request was eligible to register either a source or a
|
|
7
|
+
trigger, but the response may only set either the
|
|
8
|
+
`Attribution-Reporting-Register-Source` header or the
|
|
9
|
+
`Attribution-Reporting-Register-Trigger` header, not both.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# An attribution source registration was ignored because the request was ineligible
|
|
2
|
+
|
|
3
|
+
This page tried to register a source using the Attribution Reporting API, but
|
|
4
|
+
the request was ineligible to do so, so the source registration was ignored.
|
|
5
|
+
|
|
6
|
+
A request is eligible for source registration if it has an
|
|
7
|
+
`Attribution-Reporting-Eligible` header whose value is a structured dictionary
|
|
8
|
+
that contains the key `navigation-source` or `event-source`. If the header is
|
|
9
|
+
absent or does not contain one of those keys, any
|
|
10
|
+
`Attribution-Reporting-Register-Source` response header will be ignored.
|
|
11
|
+
|
|
12
|
+
Additionally, a single HTTP redirect chain may register only all sources or all
|
|
13
|
+
triggers, not a combination of both.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# An attribution trigger registration was ignored because the request was ineligible
|
|
2
|
+
|
|
3
|
+
This page tried to register a trigger using the Attribution Reporting API, but
|
|
4
|
+
the request was ineligible to do so, so the trigger registration was ignored.
|
|
5
|
+
|
|
6
|
+
A request is eligible for trigger registration if it has an
|
|
7
|
+
`Attribution-Reporting-Eligible` header whose value is a structured dictionary
|
|
8
|
+
that contains the key `trigger`, or if the header is absent. Otherwise, any
|
|
9
|
+
`Attribution-Reporting-Register-Trigger` response header will be ignored.
|
|
10
|
+
|
|
11
|
+
Additionally, a single HTTP redirect chain may register only all sources or all
|
|
12
|
+
triggers, not a combination of both.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Ensure that attribution reporting origins are trustworthy
|
|
2
|
+
|
|
3
|
+
This page tried to register a source or trigger using the Attribution Reporting
|
|
4
|
+
API but failed because the reporting origin was not potentially trustworthy.
|
|
5
|
+
|
|
6
|
+
The reporting origin is typically the server that sets the
|
|
7
|
+
`Attribution-Reporting-Register-Source` or
|
|
8
|
+
`Attribution-Reporting-Register-Trigger` header.
|
|
9
|
+
|
|
10
|
+
The reporting origin must use HTTPS unless it is `localhost` or `127.0.0.1`.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Ensure that attribution responses contain either web or OS headers, not both
|
|
2
|
+
|
|
3
|
+
This page included web and OS Attribution Reporting API headers in the same
|
|
4
|
+
HTTP response, which is prohibited.
|
|
5
|
+
|
|
6
|
+
The response may set at most one of the following headers:
|
|
7
|
+
|
|
8
|
+
- `Attribution-Reporting-Register-OS-Source`
|
|
9
|
+
- `Attribution-Reporting-Register-OS-Trigger`
|
|
10
|
+
- `Attribution-Reporting-Register-Source`
|
|
11
|
+
- `Attribution-Reporting-Register-Trigger`
|
package/dist/third-party/front_end/models/issues_manager/descriptions/bounceTrackingMitigations.md
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
# Chrome may soon delete state for intermediate websites in a recent navigation chain
|
|
2
|
+
|
|
3
|
+
In a recent navigation chain, one or more websites accessed some form of local storage without prior user interaction. If these websites don't get such an interaction soon, Chrome will delete their state.
|
package/dist/third-party/front_end/models/issues_manager/descriptions/cookieExcludeDomainNonAscii.md
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Ensure cookie `Domain` attribute values only contain ASCII characters
|
|
2
|
+
|
|
3
|
+
`Domain` attributes in cookies are restricted to the ASCII character set. Any
|
|
4
|
+
cookies that contain characters outside of the ASCII range in their `Domain`
|
|
5
|
+
attribute will be ignored.
|
|
6
|
+
|
|
7
|
+
To resolve this issue, you need to remove all non-ASCII characters from the
|
|
8
|
+
`Domain` attribute of the affected cookies.
|
|
9
|
+
|
|
10
|
+
If your site has an internationalized domain name (IDN), you should use
|
|
11
|
+
[punycode](punycodeReference) representation for the `Domain` attribute instead.
|
package/dist/third-party/front_end/models/issues_manager/descriptions/cookieWarnDomainNonAscii.md
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Ensure cookie `Domain` attribute values only contain ASCII characters
|
|
2
|
+
|
|
3
|
+
`Domain` attributes in cookies are restricted to the ASCII character set. Any
|
|
4
|
+
cookies that contain characters outside of the ASCII range in their `Domain`
|
|
5
|
+
attribute will be ignored in the future.
|
|
6
|
+
|
|
7
|
+
To resolve this issue, you need to remove all non-ASCII characters from the
|
|
8
|
+
`Domain` attribute of the affected cookies.
|
|
9
|
+
|
|
10
|
+
If your site has an internationalized domain name (IDN), you should use
|
|
11
|
+
[punycode](punycodeReference) representation for the `Domain` attribute instead.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Ensure CORS requests include credentials only when allowed
|
|
2
|
+
|
|
3
|
+
A cross-origin resource sharing (CORS) request was blocked because it was configured to include credentials but the `Access-Control-Allow-Credentials` response header of the request or the associated preflight request was not set to `true`.
|
|
4
|
+
|
|
5
|
+
To fix this issue, ensure that resources that expect credentialed CORS requests set the `Access-Control-Allow-Credentials` header to `true`.
|
|
6
|
+
Note that this requires the `Access-Control-Allow-Origin` header to not be a wildcard `*`.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Ensure CORS requests are made on supported schemes
|
|
2
|
+
|
|
3
|
+
A cross-origin resource sharing (CORS) request was blocked because the scheme of the request's URL doesn't support CORS.
|
|
4
|
+
|
|
5
|
+
To fix this issue, ensure all CORS request URLs specify a supported scheme, e.g. most commonly https://.
|
|
6
|
+
|
|
7
|
+
Note that if an opaque response is sufficient, then for some schemes the request's mode can be set to `no-cors` to fetch the resource with CORS disabled; that way the scheme doesn't need to support CORS, but the response content is inaccessible (opaque).
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Ensure only same-origin resources are fetched with same-origin request mode
|
|
2
|
+
|
|
3
|
+
A cross-origin resource sharing (CORS) request to a cross-origin resource was blocked because the request mode was set to `same-origin`.
|
|
4
|
+
|
|
5
|
+
To fix this issue, ensure that only same-origin resources are fetched with the `same-origin` request mode. If you need to fetch a cross-origin resource, use a request mode such as `cors`.
|
|
6
|
+
|
|
7
|
+
Note that if an opaque response is sufficient, the request's mode can be set to `no-cors` to fetch the resource with CORS disabled; that way CORS headers are not required but the response content is inaccessible (opaque).
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Ensure CORS request includes only allowed headers
|
|
2
|
+
|
|
3
|
+
A cross-origin resource sharing (CORS) request was blocked because it contained request headers that were neither CORS-safelisted (`Accept`, `Accept-Language`, `Content-Language`, `Content-Type`) nor allowed by the `Access-Control-Allow-Headers` response header of the associated preflight request.
|
|
4
|
+
|
|
5
|
+
To fix this issue, include the additional request headers you want to use in the `Access-Control-Allow-Headers` response header of the associated preflight request.
|
package/dist/third-party/front_end/models/issues_manager/descriptions/corsInsecurePrivateNetwork.md
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Ensure private network requests are made from secure contexts
|
|
2
|
+
|
|
3
|
+
A site requested a resource from a network that it could only access because of its users' privileged network position.
|
|
4
|
+
These requests expose devices and servers to the internet, increasing the risk of a cross-site request forgery (CSRF) attack, and/or information leakage.
|
|
5
|
+
|
|
6
|
+
To mitigate these risks, Chrome deprecates requests to non-public subresources when initiated from non-secure contexts, and will start blocking them in Chrome 92 (July 2021).
|
|
7
|
+
|
|
8
|
+
To fix this issue, migrate the website that needs to access local resources to HTTPS. If the target resource is not served on localhost, it must also be served on HTTPS to avoid mixed-content issues.
|
|
9
|
+
|
|
10
|
+
Administrators can make use of the `InsecurePrivateNetworkRequestsAllowed` and `InsecurePrivateNetworkRequestsAllowedForUrls` enterprise policies to temporarily disable this restriction on all or certain websites.
|
package/dist/third-party/front_end/models/issues_manager/descriptions/corsInvalidHeaderValues.md
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Ensure CORS response header values are valid
|
|
2
|
+
|
|
3
|
+
A cross-origin resource sharing (CORS) request was blocked because of invalid or missing response headers of the request or the associated [preflight request](issueCorsPreflightRequest).
|
|
4
|
+
|
|
5
|
+
To fix this issue, ensure the response to the CORS request and/or the associated [preflight request](issueCorsPreflightRequest) are not missing headers and use valid header values.
|
|
6
|
+
|
|
7
|
+
Note that if an opaque response is sufficient, the request's mode can be set to `no-cors` to fetch the resource with CORS disabled; that way CORS headers are not required but the response content is inaccessible (opaque).
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Ensure CORS request uses allowed method
|
|
2
|
+
|
|
3
|
+
A cross-origin resource sharing (CORS) request was blocked because it neither uses one of the CORS-safelisted methods (`GET`, `HEAD`, `POST`) nor was the request method explicitly allowed by the `Access-Control-Allow-Methods` response header of the associated [preflight request](issueCorsPreflightRequest).
|
|
4
|
+
|
|
5
|
+
To fix this issue, include the request method in the `Access-Control-Allow-Methods` header of the associated preflight request.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Ensure no-cors requests configure redirect mode follow
|
|
2
|
+
|
|
3
|
+
A cross-origin resource sharing (CORS) request was blocked because it was configured to use request mode `no-cors` but did not use the redirect mode `follow`.
|
|
4
|
+
|
|
5
|
+
To fix this issue, ensure that whenever the request mode `no-cors` is set then the redirect mode is set to `follow`.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Ensure CORS requesting origin matches resource's allowed origin
|
|
2
|
+
|
|
3
|
+
A cross-origin resource sharing (CORS) request was blocked because the `Access-Control-Allow-Origin` response header of the request or the associated [preflight request](issueCorsPreflightRequest) specified an origin different from the origin of the context that initiated the request.
|
|
4
|
+
|
|
5
|
+
To fix this issue, ensure that the `Access-Control-Allow-Origin` header for the resource matches the request context's origin.
|
|
6
|
+
If the resource never needs to be accessed with credentials, the `Access-Control-Allow-Origin` header may be set to a wildcard `*` to allow access from everywhere.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Ensure private network requests are only made to resources that allow them
|
|
2
|
+
|
|
3
|
+
A site requested a resource from a network that it could only access because of its users' privileged network position.
|
|
4
|
+
These requests expose devices and servers to the internet, increasing the risk of a cross-site request forgery (CSRF) attack, and/or information leakage.
|
|
5
|
+
|
|
6
|
+
To mitigate these risks, Chrome will require non-public subresources to opt-into being accessed with a preflight request and will start blocking them in Chrome 101 (April 2022).
|
|
7
|
+
|
|
8
|
+
To fix this issue, ensure that response to the [preflight request](issueCorsPreflightRequest) for the private network resource has the `Access-Control-Allow-Private-Network` header set to `true`.
|
|
9
|
+
|
|
10
|
+
Administrators can make use of the `InsecurePrivateNetworkRequestsAllowed` and `InsecurePrivateNetworkRequestsAllowedForUrls` enterprise policies to temporarily disable this restriction on all or certain websites.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Ensure preflight responses are valid
|
|
2
|
+
|
|
3
|
+
A cross-origin resource sharing (CORS) request was blocked because the response to the associated [preflight request](issueCorsPreflightRequest) failed, had an unsuccessful HTTP status code, and/or was a redirect.
|
|
4
|
+
|
|
5
|
+
To fix this issue, ensure all CORS preflight `OPTIONS` requests are answered with a successful HTTP status code (2xx) and do not redirect.
|