chrome-devtools-frontend 1.0.944427 → 1.0.945677
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/config/gni/devtools_grd_files.gni +4 -0
- package/config/gni/devtools_image_files.gni +1 -0
- package/front_end/Images/src/circled_exclamation_icon.svg +3 -0
- package/front_end/core/common/ParsedURL.ts +1 -1
- package/front_end/core/host/UserMetrics.ts +3 -1
- package/front_end/core/i18n/i18nImpl.ts +7 -4
- package/front_end/core/i18n/locales/en-US.json +3 -60
- package/front_end/core/i18n/locales/en-XL.json +15 -72
- package/front_end/core/protocol_client/NodeURL.ts +1 -0
- package/front_end/core/sdk/CSSMetadata.ts +0 -1
- package/front_end/core/sdk/CSSStyleSheetHeader.ts +2 -3
- package/front_end/core/sdk/CompilerSourceMappingContentProvider.ts +2 -3
- package/front_end/core/sdk/Cookie.ts +17 -0
- package/front_end/core/sdk/CookieModel.ts +1 -0
- package/front_end/core/sdk/DebuggerModel.ts +5 -4
- package/front_end/core/sdk/NetworkManager.ts +4 -1
- package/front_end/core/sdk/NetworkRequest.ts +2 -2
- package/front_end/core/sdk/Resource.ts +2 -2
- package/front_end/core/sdk/Script.ts +2 -3
- package/front_end/entrypoints/main/MainImpl.ts +6 -0
- package/front_end/generated/protocol.d.ts +0 -4
- package/front_end/models/bindings/BreakpointManager.ts +3 -4
- package/front_end/models/bindings/ResourceMapping.ts +1 -2
- package/front_end/models/bindings/StylesSourceMapping.ts +1 -2
- package/front_end/models/emulation/EmulatedDevices.ts +2 -4
- package/front_end/models/persistence/IsolatedFileSystem.ts +7 -6
- package/front_end/models/persistence/PersistenceActions.ts +4 -1
- package/front_end/models/persistence/PlatformFileSystem.ts +3 -4
- package/front_end/models/text_utils/ContentProvider.ts +1 -2
- package/front_end/models/text_utils/StaticContentProvider.ts +2 -3
- package/front_end/models/timeline_model/TimelineJSProfile.ts +16 -3
- package/front_end/models/timeline_model/TimelineModel.ts +1 -0
- package/front_end/models/workspace/UISourceCode.ts +2 -2
- package/front_end/models/workspace_diff/WorkspaceDiff.ts +20 -6
- package/front_end/panels/animation/AnimationTimeline.ts +1 -1
- package/front_end/panels/animation/animationTimeline.css +2 -0
- package/front_end/panels/application/BackForwardCacheStrings.ts +15 -75
- package/front_end/panels/application/BackForwardCacheView.ts +8 -1
- package/front_end/panels/application/ReportingApiView.ts +15 -1
- package/front_end/panels/application/components/EndpointsGrid.ts +63 -4
- package/front_end/panels/application/components/FrameDetailsView.ts +21 -34
- package/front_end/panels/changes/ChangesView.ts +8 -7
- package/front_end/panels/elements/StyleEditorWidget.ts +7 -7
- package/front_end/panels/elements/StylePropertyTreeElement.ts +8 -15
- package/front_end/panels/elements/StylesSidebarPane.ts +35 -9
- package/front_end/panels/emulation/DeviceModeView.ts +3 -0
- package/front_end/panels/help/ReleaseNoteText.ts +3 -1
- package/front_end/panels/network/NetworkItemView.ts +7 -1
- package/front_end/panels/profiler/heapProfiler.css +2 -5
- package/front_end/panels/snippets/ScriptSnippetFileSystem.ts +1 -1
- package/front_end/panels/sources/DebuggerPlugin.ts +1 -1
- package/front_end/panels/sources/NavigatorView.ts +1 -1
- package/front_end/panels/sources/UISourceCodeFrame.ts +0 -1
- package/front_end/panels/timeline/TimelineController.ts +3 -0
- package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +3 -34
- package/front_end/panels/timeline/TimelineUIUtils.ts +51 -3
- package/front_end/panels/webauthn/WebauthnPane.ts +31 -32
- package/front_end/services/window_bounds/WindowBoundsService.ts +27 -0
- package/front_end/services/window_bounds/window_bounds.ts +9 -0
- package/front_end/third_party/acorn/README.chromium +2 -2
- package/front_end/third_party/acorn/acorn.ts +1 -1
- package/front_end/third_party/acorn/package/CHANGELOG.md +31 -1
- package/front_end/third_party/acorn/package/README.md +1 -1
- package/front_end/third_party/acorn/package/dist/acorn.d.ts +3 -0
- package/front_end/third_party/acorn/package/dist/acorn.js +772 -708
- package/front_end/third_party/acorn/package/dist/acorn.mjs +767 -703
- package/front_end/third_party/acorn/package/dist/bin.js +47 -21
- package/front_end/third_party/acorn/package/package.json +1 -1
- package/front_end/third_party/acorn-loose/README.chromium +2 -2
- package/front_end/third_party/acorn-loose/package/CHANGELOG.md +12 -0
- package/front_end/third_party/acorn-loose/package/dist/acorn-loose.js +27 -7
- package/front_end/third_party/acorn-loose/package/dist/acorn-loose.mjs +28 -8
- package/front_end/third_party/acorn-loose/package/package.json +2 -2
- package/front_end/third_party/codemirror.next/bundle.ts +1 -1
- package/front_end/third_party/codemirror.next/chunk/codemirror.js +1 -1
- package/front_end/third_party/codemirror.next/codemirror.next.d.ts +8 -1
- package/front_end/third_party/codemirror.next/codemirror.next.js +1 -1
- package/front_end/third_party/codemirror.next/package.json +1 -1
- package/front_end/third_party/i18n/i18n-impl.ts +1 -1
- package/front_end/third_party/lit-html/README.chromium +2 -2
- package/front_end/third_party/lit-html/package/CHANGELOG.md +216 -28
- package/front_end/third_party/lit-html/package/LICENSE +9 -9
- package/front_end/third_party/lit-html/package/README.md +12 -162
- package/front_end/third_party/lit-html/package/async-directive.d.ts +23 -54
- package/front_end/third_party/lit-html/package/async-directive.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/async-directive.js +2 -7
- package/front_end/third_party/lit-html/package/async-directive.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/async-directive.d.ts +23 -54
- package/front_end/third_party/lit-html/package/development/async-directive.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/async-directive.js +44 -194
- package/front_end/third_party/lit-html/package/development/async-directive.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directive-helpers.d.ts +6 -5
- package/front_end/third_party/lit-html/package/development/directive-helpers.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directive-helpers.js +25 -9
- package/front_end/third_party/lit-html/package/development/directive-helpers.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directive.d.ts +3 -16
- package/front_end/third_party/lit-html/package/development/directive.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directive.js +6 -1
- package/front_end/third_party/lit-html/package/development/directive.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/async-append.d.ts +7 -14
- package/front_end/third_party/lit-html/package/development/directives/async-append.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/async-append.js +17 -58
- package/front_end/third_party/lit-html/package/development/directives/async-append.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/async-replace.d.ts +9 -14
- package/front_end/third_party/lit-html/package/development/directives/async-replace.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/async-replace.js +57 -37
- package/front_end/third_party/lit-html/package/development/directives/async-replace.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/cache.d.ts +2 -3
- package/front_end/third_party/lit-html/package/development/directives/cache.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/cache.js +4 -6
- package/front_end/third_party/lit-html/package/development/directives/cache.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/class-map.d.ts +2 -2
- package/front_end/third_party/lit-html/package/development/directives/class-map.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/class-map.js +17 -7
- package/front_end/third_party/lit-html/package/development/directives/class-map.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/guard.d.ts +3 -2
- package/front_end/third_party/lit-html/package/development/directives/guard.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/guard.js +3 -2
- package/front_end/third_party/lit-html/package/development/directives/guard.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/live.d.ts +4 -3
- package/front_end/third_party/lit-html/package/development/directives/live.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/live.js +5 -7
- package/front_end/third_party/lit-html/package/development/directives/live.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/private-async-helpers.d.ts +58 -0
- package/front_end/third_party/lit-html/package/development/directives/private-async-helpers.d.ts.map +1 -0
- package/front_end/third_party/lit-html/package/development/directives/private-async-helpers.js +85 -0
- package/front_end/third_party/lit-html/package/development/directives/private-async-helpers.js.map +1 -0
- package/front_end/third_party/lit-html/package/development/directives/ref.d.ts +14 -11
- package/front_end/third_party/lit-html/package/development/directives/ref.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/ref.js +13 -11
- package/front_end/third_party/lit-html/package/development/directives/ref.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/repeat.d.ts +8 -4
- package/front_end/third_party/lit-html/package/development/directives/repeat.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/repeat.js +23 -9
- package/front_end/third_party/lit-html/package/development/directives/repeat.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/style-map.d.ts +1 -2
- package/front_end/third_party/lit-html/package/development/directives/style-map.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/style-map.js +1 -2
- package/front_end/third_party/lit-html/package/development/directives/style-map.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/template-content.d.ts +1 -2
- package/front_end/third_party/lit-html/package/development/directives/template-content.js +1 -2
- package/front_end/third_party/lit-html/package/development/directives/unsafe-html.d.ts +6 -4
- package/front_end/third_party/lit-html/package/development/directives/unsafe-html.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/unsafe-html.js +7 -5
- package/front_end/third_party/lit-html/package/development/directives/unsafe-html.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/unsafe-svg.d.ts +4 -1
- package/front_end/third_party/lit-html/package/development/directives/unsafe-svg.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/unsafe-svg.js +3 -0
- package/front_end/third_party/lit-html/package/development/directives/unsafe-svg.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/until.d.ts +12 -8
- package/front_end/third_party/lit-html/package/development/directives/until.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/directives/until.js +63 -23
- package/front_end/third_party/lit-html/package/development/directives/until.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/experimental-hydrate.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/experimental-hydrate.js +9 -8
- package/front_end/third_party/lit-html/package/development/experimental-hydrate.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/lit-html.d.ts +81 -136
- package/front_end/third_party/lit-html/package/development/lit-html.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/lit-html.js +249 -76
- package/front_end/third_party/lit-html/package/development/lit-html.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/polyfill-support.d.ts +1 -41
- package/front_end/third_party/lit-html/package/development/polyfill-support.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/polyfill-support.js +40 -21
- package/front_end/third_party/lit-html/package/development/polyfill-support.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/private-ssr-support.d.ts +12 -10
- package/front_end/third_party/lit-html/package/development/private-ssr-support.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/private-ssr-support.js +11 -3
- package/front_end/third_party/lit-html/package/development/private-ssr-support.js.map +1 -1
- package/front_end/third_party/lit-html/package/development/static.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/development/static.js +6 -5
- package/front_end/third_party/lit-html/package/development/static.js.map +1 -1
- package/front_end/third_party/lit-html/package/directive-helpers.d.ts +6 -5
- package/front_end/third_party/lit-html/package/directive-helpers.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directive-helpers.js +2 -2
- package/front_end/third_party/lit-html/package/directive-helpers.js.map +1 -1
- package/front_end/third_party/lit-html/package/directive.d.ts +3 -16
- package/front_end/third_party/lit-html/package/directive.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directive.js +1 -1
- package/front_end/third_party/lit-html/package/directive.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/async-append.d.ts +7 -14
- package/front_end/third_party/lit-html/package/directives/async-append.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/async-append.js +2 -6
- package/front_end/third_party/lit-html/package/directives/async-append.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/async-replace.d.ts +9 -14
- package/front_end/third_party/lit-html/package/directives/async-replace.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/async-replace.js +2 -5
- package/front_end/third_party/lit-html/package/directives/async-replace.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/cache.d.ts +2 -3
- package/front_end/third_party/lit-html/package/directives/cache.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/cache.js +2 -5
- package/front_end/third_party/lit-html/package/directives/cache.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/class-map.d.ts +2 -2
- package/front_end/third_party/lit-html/package/directives/class-map.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/class-map.js +2 -4
- package/front_end/third_party/lit-html/package/directives/class-map.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/guard.d.ts +3 -2
- package/front_end/third_party/lit-html/package/directives/guard.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/guard.js +2 -4
- package/front_end/third_party/lit-html/package/directives/guard.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/live.d.ts +4 -3
- package/front_end/third_party/lit-html/package/directives/live.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/live.js +1 -4
- package/front_end/third_party/lit-html/package/directives/live.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/private-async-helpers.d.ts +58 -0
- package/front_end/third_party/lit-html/package/directives/private-async-helpers.d.ts.map +1 -0
- package/front_end/third_party/lit-html/package/directives/private-async-helpers.js +7 -0
- package/front_end/third_party/lit-html/package/directives/private-async-helpers.js.map +1 -0
- package/front_end/third_party/lit-html/package/directives/ref.d.ts +14 -11
- package/front_end/third_party/lit-html/package/directives/ref.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/ref.js +2 -5
- package/front_end/third_party/lit-html/package/directives/ref.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/repeat.d.ts +8 -4
- package/front_end/third_party/lit-html/package/directives/repeat.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/repeat.js +2 -5
- package/front_end/third_party/lit-html/package/directives/repeat.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/style-map.d.ts +1 -2
- package/front_end/third_party/lit-html/package/directives/style-map.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/style-map.js +2 -4
- package/front_end/third_party/lit-html/package/directives/style-map.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/template-content.d.ts +1 -2
- package/front_end/third_party/lit-html/package/directives/template-content.js +2 -4
- package/front_end/third_party/lit-html/package/directives/template-content.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/unsafe-html.d.ts +6 -4
- package/front_end/third_party/lit-html/package/directives/unsafe-html.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/unsafe-html.js +2 -4
- package/front_end/third_party/lit-html/package/directives/unsafe-html.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/unsafe-svg.d.ts +4 -1
- package/front_end/third_party/lit-html/package/directives/unsafe-svg.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/unsafe-svg.js.map +1 -1
- package/front_end/third_party/lit-html/package/directives/until.d.ts +12 -8
- package/front_end/third_party/lit-html/package/directives/until.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/directives/until.js +2 -6
- package/front_end/third_party/lit-html/package/directives/until.js.map +1 -1
- package/front_end/third_party/lit-html/package/experimental-hydrate.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/experimental-hydrate.js +2 -5
- package/front_end/third_party/lit-html/package/experimental-hydrate.js.map +1 -1
- package/front_end/third_party/lit-html/package/lit-html.d.ts +81 -136
- package/front_end/third_party/lit-html/package/lit-html.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/lit-html.js +1 -1
- package/front_end/third_party/lit-html/package/lit-html.js.map +1 -1
- package/front_end/third_party/lit-html/package/package.json +75 -24
- package/front_end/third_party/lit-html/package/polyfill-support.d.ts +1 -41
- package/front_end/third_party/lit-html/package/polyfill-support.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/polyfill-support.js +1 -1
- package/front_end/third_party/lit-html/package/polyfill-support.js.map +1 -1
- package/front_end/third_party/lit-html/package/private-ssr-support.d.ts +12 -10
- package/front_end/third_party/lit-html/package/private-ssr-support.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/private-ssr-support.js +2 -2
- package/front_end/third_party/lit-html/package/private-ssr-support.js.map +1 -1
- package/front_end/third_party/lit-html/package/static.d.ts.map +1 -1
- package/front_end/third_party/lit-html/package/static.js +1 -1
- package/front_end/third_party/lit-html/package/static.js.map +1 -1
- package/front_end/third_party/marked/README.chromium +2 -2
- package/front_end/third_party/marked/marked.ts +2 -2
- package/front_end/third_party/marked/package/README.md +7 -1
- package/front_end/third_party/marked/package/bin/marked.js +214 -0
- package/front_end/third_party/marked/package/lib/marked.cjs +2907 -0
- package/front_end/third_party/marked/package/lib/marked.esm.d.ts +1 -3
- package/front_end/third_party/marked/package/lib/marked.esm.js +627 -586
- package/front_end/third_party/marked/package/lib/marked.umd.js +2913 -0
- package/front_end/third_party/marked/package/man/marked.1 +5 -24
- package/front_end/third_party/marked/package/man/marked.1.txt +21 -31
- package/front_end/third_party/marked/package/marked.min.js +1 -1
- package/front_end/third_party/marked/package/package.json +41 -32
- package/front_end/third_party/marked/package/src/Lexer.js +109 -108
- package/front_end/third_party/marked/package/src/Parser.js +38 -15
- package/front_end/third_party/marked/package/src/Renderer.js +5 -5
- package/front_end/third_party/marked/package/src/Slugger.js +2 -2
- package/front_end/third_party/marked/package/src/TextRenderer.js +2 -2
- package/front_end/third_party/marked/package/src/Tokenizer.js +215 -190
- package/front_end/third_party/marked/package/src/defaults.js +6 -9
- package/front_end/third_party/marked/package/src/helpers.js +16 -27
- package/front_end/third_party/marked/package/src/marked.js +146 -63
- package/front_end/third_party/marked/package/src/rules.js +20 -45
- package/front_end/third_party/wasmparser/README.chromium +2 -2
- package/front_end/third_party/wasmparser/package/.github/workflows/main.yml +47 -0
- package/front_end/third_party/wasmparser/package/CHANGELOG.md +12 -0
- package/front_end/third_party/wasmparser/package/dist/cjs/WasmParser.js +53 -53
- package/front_end/third_party/wasmparser/package/dist/cjs/WasmParser.js.map +1 -1
- package/front_end/third_party/wasmparser/package/dist/esm/WasmParser.js +53 -53
- package/front_end/third_party/wasmparser/package/dist/esm/WasmParser.js.map +1 -1
- package/front_end/third_party/wasmparser/package/package.json +1 -1
- package/front_end/third_party/wasmparser/package/src/WasmParser.ts +53 -53
- package/front_end/ui/components/adorners/Adorner.ts +14 -14
- package/front_end/ui/components/buttons/Button.ts +133 -42
- package/front_end/ui/components/buttons/button.css +31 -0
- package/front_end/ui/components/data_grid/DataGrid.ts +131 -122
- package/front_end/ui/components/data_grid/DataGridController.ts +42 -42
- package/front_end/ui/components/diff_view/DiffView.ts +4 -4
- package/front_end/ui/components/docs/button/basic.html +3 -0
- package/front_end/ui/components/docs/button/basic.ts +58 -0
- package/front_end/ui/components/expandable_list/ExpandableList.ts +11 -11
- package/front_end/ui/components/icon_button/Icon.ts +24 -21
- package/front_end/ui/components/icon_button/IconButton.ts +31 -31
- package/front_end/ui/components/issue_counter/IssueCounter.ts +52 -52
- package/front_end/ui/components/issue_counter/IssueLinkIcon.ts +42 -42
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspector.ts +67 -67
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorController.ts +22 -22
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorPane.ts +36 -36
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryNavigator.ts +19 -19
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryValueInterpreter.ts +25 -25
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryViewer.ts +52 -52
- package/front_end/ui/components/linear_memory_inspector/ValueInterpreterDisplay.ts +21 -21
- package/front_end/ui/components/linear_memory_inspector/ValueInterpreterSettings.ts +6 -6
- package/front_end/ui/components/markdown_view/MarkdownImage.ts +14 -14
- package/front_end/ui/components/markdown_view/MarkdownLink.ts +8 -8
- package/front_end/ui/components/markdown_view/MarkdownView.ts +6 -6
- package/front_end/ui/components/render_coordinator/RenderCoordinator.ts +33 -33
- package/front_end/ui/components/report_view/ReportView.ts +18 -18
- package/front_end/ui/components/request_link_icon/RequestLinkIcon.ts +53 -53
- package/front_end/ui/components/settings/SettingCheckbox.ts +15 -15
- package/front_end/ui/components/survey_link/SurveyLink.ts +28 -28
- package/front_end/ui/components/text_editor/TextEditor.ts +68 -36
- package/front_end/ui/components/text_editor/config.ts +4 -2
- package/front_end/ui/components/text_editor/javascript.ts +6 -6
- package/front_end/ui/components/text_prompt/TextPrompt.ts +19 -19
- package/front_end/ui/components/tree_outline/TreeOutline.ts +56 -56
- package/front_end/ui/legacy/Infobar.ts +9 -0
- package/front_end/ui/legacy/InspectorView.ts +1 -1
- package/front_end/ui/legacy/ListWidget.ts +2 -2
- package/front_end/ui/legacy/ViewManager.ts +6 -0
- package/front_end/ui/legacy/components/cookie_table/CookiesTable.ts +20 -0
- package/front_end/ui/legacy/tabbedPane.css +1 -1
- package/inspector_overlay/main.ts +3 -0
- package/package.json +1 -1
- package/scripts/eslint_rules/lib/l10n_filename_matches.js +17 -4
- package/scripts/eslint_rules/tests/l10n_filename_matches_test.js +21 -0
|
@@ -32,7 +32,6 @@
|
|
|
32
32
|
|
|
33
33
|
import * as Common from '../../core/common/common.js';
|
|
34
34
|
import * as SDK from '../../core/sdk/sdk.js';
|
|
35
|
-
import type * as Platform from '../../core/platform/platform.js';
|
|
36
35
|
import type * as Protocol from '../../generated/protocol.js';
|
|
37
36
|
import type * as TextUtils from '../text_utils/text_utils.js';
|
|
38
37
|
import * as Workspace from '../workspace/workspace.js';
|
|
@@ -630,7 +629,7 @@ export class ModelBreakpoint {
|
|
|
630
629
|
const positions = debuggerLocations.map(loc => {
|
|
631
630
|
const script = loc.script() as SDK.Script.Script;
|
|
632
631
|
return {
|
|
633
|
-
url: script.sourceURL
|
|
632
|
+
url: script.sourceURL,
|
|
634
633
|
scriptId: script.scriptId,
|
|
635
634
|
scriptHash: script.hash,
|
|
636
635
|
lineNumber: loc.lineNumber,
|
|
@@ -645,7 +644,7 @@ export class ModelBreakpoint {
|
|
|
645
644
|
// at least signal a warning to the developer that this #breakpoint wasn't
|
|
646
645
|
// really resolved.
|
|
647
646
|
const position = {
|
|
648
|
-
url: this.#breakpoint.url()
|
|
647
|
+
url: this.#breakpoint.url(),
|
|
649
648
|
scriptId: '' as Protocol.Runtime.ScriptId,
|
|
650
649
|
scriptHash: '',
|
|
651
650
|
lineNumber,
|
|
@@ -794,7 +793,7 @@ export class ModelBreakpoint {
|
|
|
794
793
|
}
|
|
795
794
|
|
|
796
795
|
interface Position {
|
|
797
|
-
url:
|
|
796
|
+
url: string;
|
|
798
797
|
scriptId: Protocol.Runtime.ScriptId;
|
|
799
798
|
scriptHash: string;
|
|
800
799
|
lineNumber: number;
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import * as Common from '../../core/common/common.js';
|
|
6
|
-
import type * as Platform from '../../core/platform/platform.js';
|
|
7
6
|
import * as SDK from '../../core/sdk/sdk.js';
|
|
8
7
|
import * as TextUtils from '../text_utils/text_utils.js';
|
|
9
8
|
import * as Workspace from '../workspace/workspace.js';
|
|
@@ -421,7 +420,7 @@ class Binding implements TextUtils.ContentProvider.ContentProvider {
|
|
|
421
420
|
return this.resources.values().next().value;
|
|
422
421
|
}
|
|
423
422
|
|
|
424
|
-
contentURL():
|
|
423
|
+
contentURL(): string {
|
|
425
424
|
return this.firstResource().contentURL();
|
|
426
425
|
}
|
|
427
426
|
|
|
@@ -29,7 +29,6 @@
|
|
|
29
29
|
*/
|
|
30
30
|
|
|
31
31
|
import * as Common from '../../core/common/common.js';
|
|
32
|
-
import type * as Platform from '../../core/platform/platform.js';
|
|
33
32
|
import * as SDK from '../../core/sdk/sdk.js';
|
|
34
33
|
import type * as TextUtils from '../text_utils/text_utils.js';
|
|
35
34
|
import * as Workspace from '../workspace/workspace.js';
|
|
@@ -298,7 +297,7 @@ export class StyleFile implements TextUtils.ContentProvider.ContentProvider {
|
|
|
298
297
|
Common.EventTarget.removeEventListeners(this.#eventListeners);
|
|
299
298
|
}
|
|
300
299
|
|
|
301
|
-
contentURL():
|
|
300
|
+
contentURL(): string {
|
|
302
301
|
console.assert(this.headers.size > 0);
|
|
303
302
|
return this.headers.values().next().value.originalContentProvider().contentURL();
|
|
304
303
|
}
|
|
@@ -502,14 +502,12 @@ export class EmulatedDevicesList extends Common.ObjectWrapper.ObjectWrapper<Even
|
|
|
502
502
|
constructor() {
|
|
503
503
|
super();
|
|
504
504
|
|
|
505
|
-
this.#standardSetting = Common.Settings.Settings.instance().createSetting(
|
|
506
|
-
'standardEmulatedDeviceList', [], Common.Settings.SettingStorageType.Synced);
|
|
505
|
+
this.#standardSetting = Common.Settings.Settings.instance().createSetting('standardEmulatedDeviceList', []);
|
|
507
506
|
this.#standardInternal = new Set();
|
|
508
507
|
this.listFromJSONV1(this.#standardSetting.get(), this.#standardInternal);
|
|
509
508
|
this.updateStandardDevices();
|
|
510
509
|
|
|
511
|
-
this.#customSetting = Common.Settings.Settings.instance().createSetting(
|
|
512
|
-
'customEmulatedDeviceList', [], Common.Settings.SettingStorageType.Synced);
|
|
510
|
+
this.#customSetting = Common.Settings.Settings.instance().createSetting('customEmulatedDeviceList', []);
|
|
513
511
|
this.#customInternal = new Set();
|
|
514
512
|
if (!this.listFromJSONV1(this.#customSetting.get(), this.#customInternal)) {
|
|
515
513
|
this.saveCustomDevices();
|
|
@@ -28,6 +28,8 @@
|
|
|
28
28
|
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
29
29
|
*/
|
|
30
30
|
|
|
31
|
+
// TODO(crbug.com/1253323): All casts to UrlString will be removed from this file when migration to branded types is complete.
|
|
32
|
+
|
|
31
33
|
import * as Common from '../../core/common/common.js';
|
|
32
34
|
import * as Host from '../../core/host/host.js';
|
|
33
35
|
import * as i18n from '../../core/i18n/i18n.js';
|
|
@@ -82,7 +84,7 @@ export class IsolatedFileSystem extends PlatformFileSystem {
|
|
|
82
84
|
constructor(
|
|
83
85
|
manager: IsolatedFileSystemManager, path: string, embedderPath: string, domFileSystem: FileSystem, type: string) {
|
|
84
86
|
// TODO(crbug.com/1253323): Cast to UrlString will be removed when migration to branded types is complete.
|
|
85
|
-
super(path
|
|
87
|
+
super(path, type);
|
|
86
88
|
this.manager = manager;
|
|
87
89
|
this.embedderPathInternal = embedderPath;
|
|
88
90
|
this.domFileSystem = domFileSystem;
|
|
@@ -174,9 +176,8 @@ export class IsolatedFileSystem extends PlatformFileSystem {
|
|
|
174
176
|
this.initialGitFoldersInternal.add(parentFolder);
|
|
175
177
|
}
|
|
176
178
|
if (this.isFileExcluded(entry.fullPath + '/')) {
|
|
177
|
-
// TODO(crbug.com/1253323): Cast to RawPathString will be removed when migration to branded types is complete.
|
|
178
179
|
this.excludedEmbedderFolders.push(Common.ParsedURL.ParsedURL.capFilePrefix(
|
|
179
|
-
this.path() + entry.fullPath as Platform.DevToolsPath.
|
|
180
|
+
this.path() + entry.fullPath as Platform.DevToolsPath.UrlString, Host.Platform.isWin()));
|
|
180
181
|
continue;
|
|
181
182
|
}
|
|
182
183
|
++pendingRequests;
|
|
@@ -552,9 +553,9 @@ export class IsolatedFileSystem extends PlatformFileSystem {
|
|
|
552
553
|
Common.ResourceType.resourceTypes.Document;
|
|
553
554
|
}
|
|
554
555
|
|
|
555
|
-
tooltipForURL(url:
|
|
556
|
-
const path =
|
|
557
|
-
|
|
556
|
+
tooltipForURL(url: string): string {
|
|
557
|
+
const path = Platform.StringUtilities.trimMiddle(
|
|
558
|
+
Common.ParsedURL.ParsedURL.capFilePrefix(url as Platform.DevToolsPath.UrlString, Host.Platform.isWin()), 150);
|
|
558
559
|
return i18nString(UIStrings.linkedToS, {PH1: path});
|
|
559
560
|
}
|
|
560
561
|
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
import * as Common from '../../core/common/common.js';
|
|
6
6
|
import * as Host from '../../core/host/host.js';
|
|
7
7
|
import * as i18n from '../../core/i18n/i18n.js';
|
|
8
|
+
import type * as Platform from '../../core/platform/platform.js';
|
|
8
9
|
import * as SDK from '../../core/sdk/sdk.js';
|
|
9
10
|
|
|
10
11
|
import type * as TextUtils from '../text_utils/text_utils.js';
|
|
@@ -92,7 +93,9 @@ export class ContextMenuProvider implements UI.ContextMenu.Provider {
|
|
|
92
93
|
const binding = uiSourceCode && PersistenceImpl.instance().binding(uiSourceCode);
|
|
93
94
|
const fileURL = binding ? binding.fileSystem.contentURL() : contentProvider.contentURL();
|
|
94
95
|
if (fileURL.startsWith('file://')) {
|
|
95
|
-
|
|
96
|
+
// TODO(crbug.com/1253323): Cast to UrlString will be removed when migration to branded types is complete.
|
|
97
|
+
const path =
|
|
98
|
+
Common.ParsedURL.ParsedURL.capFilePrefix(fileURL as Platform.DevToolsPath.UrlString, Host.Platform.isWin());
|
|
96
99
|
contextMenu.revealSection().appendItem(
|
|
97
100
|
i18nString(UIStrings.openInContainingFolder),
|
|
98
101
|
() => Host.InspectorFrontendHost.InspectorFrontendHostInstance.showItemInFolder(path));
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Common from '../../core/common/common.js';
|
|
6
|
-
import type * as Platform from '../../core/platform/platform.js';
|
|
7
6
|
import * as i18n from '../../core/i18n/i18n.js';
|
|
8
7
|
import type * as TextUtils from '../text_utils/text_utils.js';
|
|
9
8
|
|
|
@@ -16,9 +15,9 @@ const UIStrings = {
|
|
|
16
15
|
const str_ = i18n.i18n.registerUIStrings('models/persistence/PlatformFileSystem.ts', UIStrings);
|
|
17
16
|
const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
|
18
17
|
export class PlatformFileSystem {
|
|
19
|
-
private readonly pathInternal:
|
|
18
|
+
private readonly pathInternal: string;
|
|
20
19
|
private readonly typeInternal: string;
|
|
21
|
-
constructor(path:
|
|
20
|
+
constructor(path: string, type: string) {
|
|
22
21
|
this.pathInternal = path;
|
|
23
22
|
this.typeInternal = type;
|
|
24
23
|
}
|
|
@@ -35,7 +34,7 @@ export class PlatformFileSystem {
|
|
|
35
34
|
return [];
|
|
36
35
|
}
|
|
37
36
|
|
|
38
|
-
path():
|
|
37
|
+
path(): string {
|
|
39
38
|
return this.pathInternal;
|
|
40
39
|
}
|
|
41
40
|
|
|
@@ -29,10 +29,9 @@
|
|
|
29
29
|
*/
|
|
30
30
|
|
|
31
31
|
import type * as Common from '../../core/common/common.js';
|
|
32
|
-
import type * as Platform from '../../core/platform/platform.js';
|
|
33
32
|
|
|
34
33
|
export abstract class ContentProvider {
|
|
35
|
-
abstract contentURL():
|
|
34
|
+
abstract contentURL(): string;
|
|
36
35
|
abstract contentType(): Common.ResourceType.ResourceType;
|
|
37
36
|
abstract contentEncoded(): Promise<boolean>;
|
|
38
37
|
abstract requestContent(): Promise<DeferredContent>;
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Common from '../../core/common/common.js';
|
|
6
|
-
import type * as Platform from '../../core/platform/platform.js';
|
|
7
6
|
|
|
8
7
|
import type {ContentProvider, DeferredContent, SearchMatch} from './ContentProvider.js';
|
|
9
8
|
import {performSearchInContent} from './TextUtils.js';
|
|
@@ -30,8 +29,8 @@ export class StaticContentProvider implements ContentProvider {
|
|
|
30
29
|
}
|
|
31
30
|
|
|
32
31
|
// TODO(crbug.com/1253323): Cast to PawPathString will be removed when migration to branded types is complete.
|
|
33
|
-
contentURL():
|
|
34
|
-
return this.contentURLInternal
|
|
32
|
+
contentURL(): string {
|
|
33
|
+
return this.contentURLInternal;
|
|
35
34
|
}
|
|
36
35
|
|
|
37
36
|
contentType(): Common.ResourceType.ResourceType {
|
|
@@ -59,6 +59,7 @@ export class TimelineJSProfileProcessor {
|
|
|
59
59
|
|
|
60
60
|
static generateJSFrameEvents(events: SDK.TracingModel.Event[], config: {
|
|
61
61
|
showAllEvents: boolean,
|
|
62
|
+
showRuntimeCallStats: boolean,
|
|
62
63
|
showNativeFunctions: boolean,
|
|
63
64
|
}): SDK.TracingModel.Event[] {
|
|
64
65
|
function equalFrames(frame1: Protocol.Runtime.CallFrame, frame2: Protocol.Runtime.CallFrame): boolean {
|
|
@@ -84,7 +85,7 @@ export class TimelineJSProfileProcessor {
|
|
|
84
85
|
const lockedJsStackDepth: number[] = [];
|
|
85
86
|
let ordinal = 0;
|
|
86
87
|
let fakeJSInvocation = false;
|
|
87
|
-
const {showAllEvents, showNativeFunctions} = config;
|
|
88
|
+
const {showAllEvents, showRuntimeCallStats, showNativeFunctions} = config;
|
|
88
89
|
|
|
89
90
|
function onStartEvent(e: SDK.TracingModel.Event): void {
|
|
90
91
|
if (fakeJSInvocation) {
|
|
@@ -134,10 +135,15 @@ export class TimelineJSProfileProcessor {
|
|
|
134
135
|
jsFramesStack.length = depth;
|
|
135
136
|
}
|
|
136
137
|
|
|
138
|
+
function showNativeName(name: string): boolean {
|
|
139
|
+
return showRuntimeCallStats && Boolean(TimelineJSProfileProcessor.nativeGroup(name));
|
|
140
|
+
}
|
|
141
|
+
|
|
137
142
|
function filterStackFrames(stack: Protocol.Runtime.CallFrame[]): void {
|
|
138
143
|
if (showAllEvents) {
|
|
139
144
|
return;
|
|
140
145
|
}
|
|
146
|
+
let previousNativeFrameName: (string|null)|null = null;
|
|
141
147
|
let j = 0;
|
|
142
148
|
for (let i = 0; i < stack.length; ++i) {
|
|
143
149
|
const frame = stack[i];
|
|
@@ -147,9 +153,16 @@ export class TimelineJSProfileProcessor {
|
|
|
147
153
|
continue;
|
|
148
154
|
}
|
|
149
155
|
const isNativeRuntimeFrame = TimelineJSProfileProcessor.isNativeRuntimeFrame(frame);
|
|
150
|
-
if (!
|
|
151
|
-
|
|
156
|
+
if (isNativeRuntimeFrame && !showNativeName(frame.functionName)) {
|
|
157
|
+
continue;
|
|
158
|
+
}
|
|
159
|
+
const nativeFrameName =
|
|
160
|
+
isNativeRuntimeFrame ? TimelineJSProfileProcessor.nativeGroup(frame.functionName) : null;
|
|
161
|
+
if (previousNativeFrameName && previousNativeFrameName === nativeFrameName) {
|
|
162
|
+
continue;
|
|
152
163
|
}
|
|
164
|
+
previousNativeFrameName = nativeFrameName;
|
|
165
|
+
stack[j++] = frame;
|
|
153
166
|
}
|
|
154
167
|
stack.length = j;
|
|
155
168
|
}
|
|
@@ -678,6 +678,7 @@ export class TimelineModelImpl {
|
|
|
678
678
|
if (jsSamples || events.some(e => e.name === RecordType.JSSample)) {
|
|
679
679
|
const jsFrameEvents = TimelineJSProfileProcessor.generateJSFrameEvents(events, {
|
|
680
680
|
showAllEvents: Root.Runtime.experiments.isEnabled('timelineShowAllEvents'),
|
|
681
|
+
showRuntimeCallStats: Root.Runtime.experiments.isEnabled('timelineV8RuntimeCallStats'),
|
|
681
682
|
showNativeFunctions: Common.Settings.Settings.instance().moduleSetting('showNativeFunctionsInJSProfile').get(),
|
|
682
683
|
});
|
|
683
684
|
if (jsFrameEvents && jsFrameEvents.length) {
|
|
@@ -192,8 +192,8 @@ export class UISourceCode extends Common.ObjectWrapper.ObjectWrapper<EventTypes>
|
|
|
192
192
|
}
|
|
193
193
|
|
|
194
194
|
// TODO(crbug.com/1253323): Cast to RawPathString will be removed when migration to branded types is complete.
|
|
195
|
-
contentURL():
|
|
196
|
-
return this.url()
|
|
195
|
+
contentURL(): string {
|
|
196
|
+
return this.url();
|
|
197
197
|
}
|
|
198
198
|
|
|
199
199
|
contentType(): Common.ResourceType.ResourceType {
|
|
@@ -5,9 +5,14 @@
|
|
|
5
5
|
import * as Common from '../../core/common/common.js';
|
|
6
6
|
import * as Host from '../../core/host/host.js';
|
|
7
7
|
import * as Diff from '../../third_party/diff/diff.js';
|
|
8
|
+
import * as FormatterModule from '../formatter/formatter.js';
|
|
8
9
|
import * as Persistence from '../persistence/persistence.js';
|
|
9
10
|
import * as Workspace from '../workspace/workspace.js';
|
|
10
11
|
|
|
12
|
+
interface DiffRequestOptions {
|
|
13
|
+
shouldFormatDiff: boolean;
|
|
14
|
+
}
|
|
15
|
+
|
|
11
16
|
export class WorkspaceDiffImpl extends Common.ObjectWrapper.ObjectWrapper<EventTypes> {
|
|
12
17
|
private readonly uiSourceCodeDiffs: WeakMap<Workspace.UISourceCode.UISourceCode, UISourceCodeDiff>;
|
|
13
18
|
private readonly loadingUISourceCodes:
|
|
@@ -29,8 +34,9 @@ export class WorkspaceDiffImpl extends Common.ObjectWrapper.ObjectWrapper<EventT
|
|
|
29
34
|
workspace.uiSourceCodes().forEach(this.updateModifiedState.bind(this));
|
|
30
35
|
}
|
|
31
36
|
|
|
32
|
-
requestDiff(uiSourceCode: Workspace.UISourceCode.UISourceCode):
|
|
33
|
-
|
|
37
|
+
requestDiff(uiSourceCode: Workspace.UISourceCode.UISourceCode, diffRequestOptions: DiffRequestOptions):
|
|
38
|
+
Promise<Diff.Diff.DiffArray|null> {
|
|
39
|
+
return this.uiSourceCodeDiff(uiSourceCode).requestDiff(diffRequestOptions);
|
|
34
40
|
}
|
|
35
41
|
|
|
36
42
|
subscribeToDiffChange(uiSourceCode: Workspace.UISourceCode.UISourceCode, callback: () => void, thisObj?: Object):
|
|
@@ -212,9 +218,9 @@ export class UISourceCodeDiff extends Common.ObjectWrapper.ObjectWrapper<UISourc
|
|
|
212
218
|
}
|
|
213
219
|
}
|
|
214
220
|
|
|
215
|
-
requestDiff(): Promise<Diff.Diff.DiffArray|null> {
|
|
221
|
+
requestDiff(diffRequestOptions: DiffRequestOptions): Promise<Diff.Diff.DiffArray|null> {
|
|
216
222
|
if (!this.requestDiffPromise) {
|
|
217
|
-
this.requestDiffPromise = this.innerRequestDiff();
|
|
223
|
+
this.requestDiffPromise = this.innerRequestDiff(diffRequestOptions);
|
|
218
224
|
}
|
|
219
225
|
return this.requestDiffPromise;
|
|
220
226
|
}
|
|
@@ -231,12 +237,12 @@ export class UISourceCodeDiff extends Common.ObjectWrapper.ObjectWrapper<UISourc
|
|
|
231
237
|
return content.content || ('error' in content && content.error) || '';
|
|
232
238
|
}
|
|
233
239
|
|
|
234
|
-
private async innerRequestDiff(): Promise<Diff.Diff.DiffArray|null> {
|
|
240
|
+
private async innerRequestDiff({shouldFormatDiff}: DiffRequestOptions): Promise<Diff.Diff.DiffArray|null> {
|
|
235
241
|
if (this.dispose) {
|
|
236
242
|
return null;
|
|
237
243
|
}
|
|
238
244
|
|
|
239
|
-
|
|
245
|
+
let baseline = await this.originalContent();
|
|
240
246
|
if (baseline === null) {
|
|
241
247
|
return null;
|
|
242
248
|
}
|
|
@@ -264,6 +270,14 @@ export class UISourceCodeDiff extends Common.ObjectWrapper.ObjectWrapper<UISourc
|
|
|
264
270
|
if (current === null || baseline === null) {
|
|
265
271
|
return null;
|
|
266
272
|
}
|
|
273
|
+
if (shouldFormatDiff) {
|
|
274
|
+
baseline = (await FormatterModule.ScriptFormatter.format(
|
|
275
|
+
this.uiSourceCode.contentType(), this.uiSourceCode.mimeType(), baseline))
|
|
276
|
+
.formattedContent;
|
|
277
|
+
current = (await FormatterModule.ScriptFormatter.format(
|
|
278
|
+
this.uiSourceCode.contentType(), this.uiSourceCode.mimeType(), current))
|
|
279
|
+
.formattedContent;
|
|
280
|
+
}
|
|
267
281
|
return Diff.Diff.DiffWrapper.lineDiff(baseline.split(/\r\n|\n|\r/), current.split(/\r\n|\n|\r/));
|
|
268
282
|
}
|
|
269
283
|
}
|
|
@@ -332,7 +332,7 @@ export class AnimationTimeline extends UI.Widget.VBox implements SDK.TargetManag
|
|
|
332
332
|
show: (popover: UI.GlassPane.GlassPane): Promise<boolean> => {
|
|
333
333
|
let animGroup;
|
|
334
334
|
for (const [group, previewUI] of this.#previewMap) {
|
|
335
|
-
if (previewUI.element === element.parentElement) {
|
|
335
|
+
if (previewUI.element === element || previewUI.element === element.parentElement) {
|
|
336
336
|
animGroup = group;
|
|
337
337
|
}
|
|
338
338
|
}
|
|
@@ -424,66 +424,6 @@ const UIStrings = {
|
|
|
424
424
|
* @description Description text for not restored reason ContentMediaPlay.
|
|
425
425
|
*/
|
|
426
426
|
contentMediaPlay: 'A media player was playing upon navigating away.',
|
|
427
|
-
/**
|
|
428
|
-
* @description Description text for not restored reason EmbedderPopupBlockerTabHelper.
|
|
429
|
-
*/
|
|
430
|
-
embedderPopupBlockerTabHelper: 'EmbedderPopupBlockerTabHelper',
|
|
431
|
-
/**
|
|
432
|
-
* @description Description text for not restored reason EmbedderSafeBrowsingTriggeredPopupBlocker.
|
|
433
|
-
*/
|
|
434
|
-
embedderSafeBrowsingTriggeredPopupBlocker: 'EmbedderSafeBrowsingTriggeredPopupBlocker',
|
|
435
|
-
/**
|
|
436
|
-
* @description Description text for not restored reason EmbedderSafeBrowsingThreatDetails.
|
|
437
|
-
*/
|
|
438
|
-
embedderSafeBrowsingThreatDetails: 'EmbedderSafeBrowsingThreatDetails',
|
|
439
|
-
/**
|
|
440
|
-
* @description Description text for not restored reason EmbedderAppBannerManager.
|
|
441
|
-
*/
|
|
442
|
-
embedderAppBannerManager: 'EmbedderAppBannerManager',
|
|
443
|
-
/**
|
|
444
|
-
* @description Description text for not restored reason EmbedderDomDistillerViewerSource.
|
|
445
|
-
*/
|
|
446
|
-
embedderDomDistillerViewerSource: 'EmbedderDomDistillerViewerSource',
|
|
447
|
-
/**
|
|
448
|
-
* @description Description text for not restored reason EmbedderDomDistillerSelfDeletingRequestDelegate.
|
|
449
|
-
*/
|
|
450
|
-
embedderDomDistillerSelfDeletingRequestDelegate: 'EmbedderDomDistillerSelfDeletingRequestDelegate',
|
|
451
|
-
/**
|
|
452
|
-
* @description Description text for not restored reason EmbedderOomInterventionTabHelper.
|
|
453
|
-
*/
|
|
454
|
-
embedderOomInterventionTabHelper: 'EmbedderOomInterventionTabHelper',
|
|
455
|
-
/**
|
|
456
|
-
* @description Description text for not restored reason EmbedderOfflinePage.
|
|
457
|
-
*/
|
|
458
|
-
embedderOfflinePage: 'EmbedderOfflinePage',
|
|
459
|
-
/**
|
|
460
|
-
* @description Description text for not restored reason EmbedderChromePasswordManagerClientBindCredentialManager.
|
|
461
|
-
*/
|
|
462
|
-
embedderChromePasswordManagerClientBindCredentialManager: 'EmbedderChromePasswordManagerClientBindCredentialManager',
|
|
463
|
-
/**
|
|
464
|
-
* @description Description text for not restored reason EmbedderPermissionRequestManager.
|
|
465
|
-
*/
|
|
466
|
-
embedderPermissionRequestManager: 'EmbedderPermissionRequestManager',
|
|
467
|
-
/**
|
|
468
|
-
* @description Description text for not restored reason EmbedderModalDialog.
|
|
469
|
-
*/
|
|
470
|
-
embedderModalDialog: 'EmbedderModalDialog',
|
|
471
|
-
/**
|
|
472
|
-
* @description Description text for not restored reason EmbedderExtensions.
|
|
473
|
-
*/
|
|
474
|
-
embedderExtensions: 'EmbedderExtensions',
|
|
475
|
-
/**
|
|
476
|
-
* @description Description text for not restored reason EmbedderExtensionMessaging.
|
|
477
|
-
*/
|
|
478
|
-
embedderExtensionMessaging: 'EmbedderExtensionMessaging',
|
|
479
|
-
/**
|
|
480
|
-
* @description Description text for not restored reason EmbedderExtensionMessagingForOpenPort.
|
|
481
|
-
*/
|
|
482
|
-
embedderExtensionMessagingForOpenPort: 'EmbedderExtensionMessagingForOpenPort',
|
|
483
|
-
/**
|
|
484
|
-
* @description Description text for not restored reason EmbedderExtensionSentMessageToCachedFrame.
|
|
485
|
-
*/
|
|
486
|
-
embedderExtensionSentMessageToCachedFrame: 'EmbedderExtensionSentMessageToCachedFrame',
|
|
487
427
|
};
|
|
488
428
|
|
|
489
429
|
const str_ = i18n.i18n.registerUIStrings('panels/application/BackForwardCacheStrings.ts', UIStrings);
|
|
@@ -601,23 +541,23 @@ export const NotRestoredReasonDescription = {
|
|
|
601
541
|
'ContentMediaSession': {name: i18nLazyString(UIStrings.contentMediaSession)},
|
|
602
542
|
'ContentMediaSessionService': {name: i18nLazyString(UIStrings.contentMediaSessionService)},
|
|
603
543
|
'ContentMediaPlay': {name: i18nLazyString(UIStrings.contentMediaPlay)},
|
|
604
|
-
'EmbedderPopupBlockerTabHelper': {name:
|
|
544
|
+
'EmbedderPopupBlockerTabHelper': {name: i18n.i18n.lockedLazyString('EmbedderPopupBlockerTabHelper')},
|
|
605
545
|
'EmbedderSafeBrowsingTriggeredPopupBlocker':
|
|
606
|
-
{name:
|
|
607
|
-
'EmbedderSafeBrowsingThreatDetails': {name:
|
|
608
|
-
'EmbedderAppBannerManager': {name:
|
|
609
|
-
'EmbedderDomDistillerViewerSource': {name:
|
|
546
|
+
{name: i18n.i18n.lockedLazyString('EmbedderSafeBrowsingTriggeredPopupBlocker')},
|
|
547
|
+
'EmbedderSafeBrowsingThreatDetails': {name: i18n.i18n.lockedLazyString('EmbedderSafeBrowsingThreatDetails')},
|
|
548
|
+
'EmbedderAppBannerManager': {name: i18n.i18n.lockedLazyString('EmbedderAppBannerManager')},
|
|
549
|
+
'EmbedderDomDistillerViewerSource': {name: i18n.i18n.lockedLazyString('EmbedderDomDistillerViewerSource')},
|
|
610
550
|
'EmbedderDomDistillerSelfDeletingRequestDelegate':
|
|
611
|
-
{name:
|
|
612
|
-
'EmbedderOomInterventionTabHelper': {name:
|
|
613
|
-
'EmbedderOfflinePage': {name:
|
|
551
|
+
{name: i18n.i18n.lockedLazyString('EmbedderDomDistillerSelfDeletingRequestDelegate')},
|
|
552
|
+
'EmbedderOomInterventionTabHelper': {name: i18n.i18n.lockedLazyString('EmbedderOomInterventionTabHelper')},
|
|
553
|
+
'EmbedderOfflinePage': {name: i18n.i18n.lockedLazyString('EmbedderOfflinePage')},
|
|
614
554
|
'EmbedderChromePasswordManagerClientBindCredentialManager':
|
|
615
|
-
{name:
|
|
616
|
-
'EmbedderPermissionRequestManager': {name:
|
|
617
|
-
'EmbedderModalDialog': {name:
|
|
618
|
-
'EmbedderExtensions': {name:
|
|
619
|
-
'EmbedderExtensionMessaging': {name:
|
|
620
|
-
'EmbedderExtensionMessagingForOpenPort': {name:
|
|
555
|
+
{name: i18n.i18n.lockedLazyString('EmbedderChromePasswordManagerClientBindCredentialManager')},
|
|
556
|
+
'EmbedderPermissionRequestManager': {name: i18n.i18n.lockedLazyString('EmbedderPermissionRequestManager')},
|
|
557
|
+
'EmbedderModalDialog': {name: i18n.i18n.lockedLazyString('EmbedderModalDialog')},
|
|
558
|
+
'EmbedderExtensions': {name: i18n.i18n.lockedLazyString('EmbedderExtensions')},
|
|
559
|
+
'EmbedderExtensionMessaging': {name: i18n.i18n.lockedLazyString('EmbedderExtensionMessaging')},
|
|
560
|
+
'EmbedderExtensionMessagingForOpenPort': {name: i18n.i18n.lockedLazyString('EmbedderExtensionMessagingForOpenPort')},
|
|
621
561
|
'EmbedderExtensionSentMessageToCachedFrame':
|
|
622
|
-
{name:
|
|
562
|
+
{name: i18n.i18n.lockedLazyString('EmbedderExtensionSentMessageToCachedFrame')},
|
|
623
563
|
};
|
|
@@ -262,7 +262,14 @@ export class BackForwardCacheView extends UI.ThrottledWidget.ThrottledWidget {
|
|
|
262
262
|
|
|
263
263
|
private renderReason(explanation: Protocol.Page.BackForwardCacheNotRestoredExplanation): LitHtml.TemplateResult {
|
|
264
264
|
return LitHtml.html`
|
|
265
|
-
<li
|
|
265
|
+
<li>
|
|
266
|
+
<${IconButton.Icon.Icon.litTagName} class="inline-icon" .data=${{
|
|
267
|
+
iconName: 'circled_exclamation_icon',
|
|
268
|
+
color: 'orange',
|
|
269
|
+
width: '16px',
|
|
270
|
+
height: '16px',
|
|
271
|
+
} as IconButton.Icon.IconData}></${IconButton.Icon.Icon.litTagName}>
|
|
272
|
+
${explanation.reason} : ${
|
|
266
273
|
(explanation.reason in NotRestoredReasonDescription) ?
|
|
267
274
|
LitHtml.html`${NotRestoredReasonDescription[explanation.reason].name()}` :
|
|
268
275
|
LitHtml.nothing} </li>
|
|
@@ -5,22 +5,36 @@
|
|
|
5
5
|
import * as SDK from '../../core/sdk/sdk.js';
|
|
6
6
|
import * as UI from '../../ui/legacy/legacy.js';
|
|
7
7
|
import * as ApplicationComponents from './components/components.js';
|
|
8
|
+
import type * as Protocol from '../../generated/protocol.js';
|
|
8
9
|
|
|
9
10
|
import {ReportingApiReportsView} from './ReportingApiReportsView.js';
|
|
10
11
|
|
|
11
12
|
export class ReportingApiView extends UI.SplitWidget.SplitWidget {
|
|
13
|
+
private readonly endpointsGrid = new ApplicationComponents.EndpointsGrid.EndpointsGrid();
|
|
14
|
+
private endpoints: Map<string, Protocol.Network.ReportingApiEndpoint[]>;
|
|
15
|
+
|
|
12
16
|
constructor() {
|
|
13
17
|
super(/* isVertical: */ false, /* secondIsSidebar: */ true);
|
|
18
|
+
this.endpoints = new Map();
|
|
14
19
|
const mainTarget = SDK.TargetManager.TargetManager.instance().mainTarget();
|
|
15
20
|
const networkManager = mainTarget && mainTarget.model(SDK.NetworkManager.NetworkManager);
|
|
16
21
|
if (networkManager) {
|
|
22
|
+
networkManager.addEventListener(
|
|
23
|
+
SDK.NetworkManager.Events.ReportingApiEndpointsChangedForOrigin,
|
|
24
|
+
event => this.onEndpointsChangedForOrigin(event.data), this);
|
|
25
|
+
|
|
17
26
|
const reportingApiReportsView = new ReportingApiReportsView(networkManager);
|
|
18
27
|
const reportingApiEndpointsView = new UI.Widget.VBox();
|
|
19
28
|
reportingApiEndpointsView.setMinimumSize(0, 40);
|
|
20
|
-
reportingApiEndpointsView.contentElement.appendChild(
|
|
29
|
+
reportingApiEndpointsView.contentElement.appendChild(this.endpointsGrid);
|
|
21
30
|
this.setMainWidget(reportingApiReportsView);
|
|
22
31
|
this.setSidebarWidget(reportingApiEndpointsView);
|
|
23
32
|
networkManager.enableReportingApi();
|
|
24
33
|
}
|
|
25
34
|
}
|
|
35
|
+
|
|
36
|
+
private onEndpointsChangedForOrigin(data: Protocol.Network.ReportingApiEndpointsChangedForOriginEvent): void {
|
|
37
|
+
this.endpoints.set(data.origin, data.endpoints);
|
|
38
|
+
this.endpointsGrid.data = {endpoints: this.endpoints};
|
|
39
|
+
}
|
|
26
40
|
}
|
|
@@ -3,9 +3,12 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import * as i18n from '../../../core/i18n/i18n.js';
|
|
6
|
+
import * as DataGrid from '../../../ui/components/data_grid/data_grid.js';
|
|
6
7
|
import * as ComponentHelpers from '../../../ui/components/helpers/helpers.js';
|
|
7
8
|
import * as LitHtml from '../../../ui/lit-html/lit-html.js';
|
|
8
9
|
|
|
10
|
+
import type * as Protocol from '../../../generated/protocol.js';
|
|
11
|
+
|
|
9
12
|
import reportingApiGridStyles from './reportingApiGrid.css.js';
|
|
10
13
|
|
|
11
14
|
const UIStrings = {
|
|
@@ -20,30 +23,86 @@ export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
|
|
20
23
|
|
|
21
24
|
const {render, html} = LitHtml;
|
|
22
25
|
|
|
26
|
+
export interface EndpointsGridData {
|
|
27
|
+
endpoints: Map<string, Protocol.Network.ReportingApiEndpoint[]>;
|
|
28
|
+
}
|
|
29
|
+
|
|
23
30
|
export class EndpointsGrid extends HTMLElement {
|
|
24
31
|
static readonly litTagName = LitHtml.literal`devtools-resources-endpoints-grid`;
|
|
25
32
|
|
|
26
33
|
private readonly shadow = this.attachShadow({mode: 'open'});
|
|
34
|
+
private endpoints: Map<string, Protocol.Network.ReportingApiEndpoint[]> = new Map();
|
|
27
35
|
|
|
28
36
|
connectedCallback(): void {
|
|
29
37
|
this.shadow.adoptedStyleSheets = [reportingApiGridStyles];
|
|
30
38
|
this.render();
|
|
31
39
|
}
|
|
32
40
|
|
|
33
|
-
|
|
41
|
+
set data(data: EndpointsGridData) {
|
|
42
|
+
this.endpoints = data.endpoints;
|
|
43
|
+
this.render();
|
|
44
|
+
}
|
|
45
|
+
|
|
34
46
|
private render(): void {
|
|
47
|
+
const endpointsGridData: DataGrid.DataGridController.DataGridControllerData = {
|
|
48
|
+
columns: [
|
|
49
|
+
{
|
|
50
|
+
id: 'origin',
|
|
51
|
+
title: i18n.i18n.lockedString('Origin'),
|
|
52
|
+
widthWeighting: 30,
|
|
53
|
+
hideable: false,
|
|
54
|
+
visible: true,
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
id: 'name',
|
|
58
|
+
title: i18n.i18n.lockedString('Name'),
|
|
59
|
+
widthWeighting: 20,
|
|
60
|
+
hideable: false,
|
|
61
|
+
visible: true,
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
id: 'url',
|
|
65
|
+
title: i18n.i18n.lockedString('URL'),
|
|
66
|
+
widthWeighting: 30,
|
|
67
|
+
hideable: false,
|
|
68
|
+
visible: true,
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
rows: this.buildReportRows(),
|
|
72
|
+
};
|
|
73
|
+
|
|
35
74
|
// Disabled until https://crbug.com/1079231 is fixed.
|
|
36
75
|
// clang-format off
|
|
37
76
|
render(html`
|
|
38
77
|
<div class="reporting-container">
|
|
39
78
|
<div class="reporting-header">${i18n.i18n.lockedString('Endpoints')}</div>
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
79
|
+
${this.endpoints.size > 0 ? html`
|
|
80
|
+
<${DataGrid.DataGridController.DataGridController.litTagName} .data=${
|
|
81
|
+
endpointsGridData as DataGrid.DataGridController.DataGridControllerData}>
|
|
82
|
+
</${DataGrid.DataGridController.DataGridController.litTagName}>
|
|
83
|
+
` : html`
|
|
84
|
+
<div class="reporting-placeholder">
|
|
85
|
+
<div>${i18nString(UIStrings.noEndpointsToDisplay)}</div>
|
|
86
|
+
</div>
|
|
87
|
+
`}
|
|
43
88
|
</div>
|
|
44
89
|
`, this.shadow);
|
|
45
90
|
// clang-format on
|
|
46
91
|
}
|
|
92
|
+
|
|
93
|
+
private buildReportRows(): DataGrid.DataGridUtils.Row[] {
|
|
94
|
+
return Array.from(this.endpoints)
|
|
95
|
+
.map(([origin, endpointArray]) => endpointArray.map(endpoint => {
|
|
96
|
+
return {
|
|
97
|
+
cells: [
|
|
98
|
+
{columnId: 'origin', value: origin},
|
|
99
|
+
{columnId: 'name', value: endpoint.groupName},
|
|
100
|
+
{columnId: 'url', value: endpoint.url},
|
|
101
|
+
],
|
|
102
|
+
};
|
|
103
|
+
}))
|
|
104
|
+
.flat();
|
|
105
|
+
}
|
|
47
106
|
}
|
|
48
107
|
|
|
49
108
|
ComponentHelpers.CustomElements.defineComponent('devtools-resources-endpoints-grid', EndpointsGrid);
|