chrome-devtools-frontend 1.0.998787 → 1.0.999279

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.
Files changed (56) hide show
  1. package/.clang-format +1 -0
  2. package/front_end/core/common/Color.ts +9 -1
  3. package/front_end/core/common/Object.ts +2 -1
  4. package/front_end/core/common/Settings.ts +13 -1
  5. package/front_end/core/host/InspectorFrontendHost.ts +4 -1
  6. package/front_end/core/i18n/locales/en-US.json +1 -1
  7. package/front_end/core/i18n/locales/en-XL.json +1 -1
  8. package/front_end/core/sdk/CSSProperty.ts +6 -7
  9. package/front_end/core/sdk/ChildTargetManager.ts +0 -3
  10. package/front_end/core/sdk/ConsoleModel.ts +2 -1
  11. package/front_end/core/sdk/NetworkManager.ts +3 -1
  12. package/front_end/core/sdk/RuntimeModel.ts +7 -1
  13. package/front_end/core/sdk/SourceMapManager.ts +10 -1
  14. package/front_end/entrypoints/formatter_worker/FormatterWorker.ts +5 -1
  15. package/front_end/legacy/legacy-defs.d.ts +2 -2
  16. package/front_end/models/formatter/ScriptFormatter.ts +3 -1
  17. package/front_end/models/issues_manager/DeprecationIssue.ts +1 -1
  18. package/front_end/models/issues_manager/SourceFrameIssuesManager.ts +5 -1
  19. package/front_end/models/text_utils/CodeMirrorUtils.ts +14 -17
  20. package/front_end/models/timeline_model/TimelineModel.ts +1 -1
  21. package/front_end/panels/application/IndexedDBViews.ts +5 -2
  22. package/front_end/panels/console/ConsoleView.ts +9 -1
  23. package/front_end/panels/css_overview/CSSOverviewCompletedView.ts +3 -1
  24. package/front_end/panels/elements/PropertiesWidget.ts +0 -1
  25. package/front_end/panels/elements/StylesSidebarPane.ts +7 -1
  26. package/front_end/panels/lighthouse/LighthousePanel.ts +2 -1
  27. package/front_end/panels/lighthouse/LighthouseTimespanView.ts +9 -2
  28. package/front_end/panels/lighthouse/lighthouseDialog.css +5 -0
  29. package/front_end/panels/mobile_throttling/ThrottlingManager.ts +3 -1
  30. package/front_end/panels/network/NetworkLogView.ts +5 -1
  31. package/front_end/panels/network/NetworkLogViewColumns.ts +3 -1
  32. package/front_end/panels/network/RequestTimingView.ts +1 -1
  33. package/front_end/panels/profiler/HeapSnapshotDataGrids.ts +8 -1
  34. package/front_end/panels/profiler/HeapSnapshotGridNodes.ts +3 -1
  35. package/front_end/panels/profiler/HeapSnapshotView.ts +14 -2
  36. package/front_end/panels/sources/SourcesPanel.ts +7 -1
  37. package/front_end/panels/timeline/TimelineController.ts +1 -1
  38. package/front_end/panels/timeline/TimelineFlameChartView.ts +4 -1
  39. package/front_end/panels/timeline/TimelineHistoryManager.ts +6 -1
  40. package/front_end/panels/timeline/TimelinePanel.ts +10 -1
  41. package/front_end/panels/web_audio/graph_visualizer/GraphView.ts +3 -1
  42. package/front_end/panels/web_audio/graph_visualizer/NodeRendererUtility.ts +8 -1
  43. package/front_end/panels/web_audio/graph_visualizer/NodeView.ts +13 -1
  44. package/front_end/panels/web_audio/web_audio.ts +8 -1
  45. package/front_end/ui/components/buttons/button.css +16 -3
  46. package/front_end/ui/components/data_grid/DataGrid.ts +9 -1
  47. package/front_end/ui/components/docs/button/basic.ts +10 -0
  48. package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspector.ts +11 -3
  49. package/front_end/ui/components/linear_memory_inspector/ValueInterpreterDisplay.ts +12 -1
  50. package/front_end/ui/components/tree_outline/TreeOutline.ts +16 -11
  51. package/front_end/ui/legacy/Fragment.ts +2 -2
  52. package/front_end/ui/legacy/ViewManager.ts +12 -1
  53. package/front_end/ui/legacy/XLink.ts +6 -1
  54. package/front_end/ui/legacy/components/inline_editor/CSSAngle.ts +8 -1
  55. package/front_end/ui/legacy/components/inline_editor/CSSAngleEditor.ts +7 -1
  56. package/package.json +1 -1
package/.clang-format CHANGED
@@ -7,3 +7,4 @@ CommentPragmas: .*\@.*
7
7
  AllowShortBlocksOnASingleLine: false
8
8
  AllowShortFunctionsOnASingleLine: None
9
9
  ReflowComments: false
10
+ JavaScriptWrapImports: true
@@ -33,7 +33,15 @@
33
33
 
34
34
  import * as Platform from '../platform/platform.js';
35
35
 
36
- import {blendColors, contrastRatioAPCA, desiredLuminanceAPCA, luminance, luminanceAPCA, rgbaToHsla, rgbaToHwba} from './ColorUtils.js';
36
+ import {
37
+ blendColors,
38
+ contrastRatioAPCA,
39
+ desiredLuminanceAPCA,
40
+ luminance,
41
+ luminanceAPCA,
42
+ rgbaToHsla,
43
+ rgbaToHwba,
44
+ } from './ColorUtils.js';
37
45
 
38
46
  export class Color {
39
47
  #hslaInternal: number[]|undefined;
@@ -28,7 +28,8 @@
28
28
  */
29
29
 
30
30
  import type * as Platform from '../platform/platform.js';
31
- import type {EventDescriptor, EventListener, EventTarget, EventTargetEvent, EventPayloadToRestParameters} from './EventTarget.js';
31
+ import type {
32
+ EventDescriptor, EventListener, EventTarget, EventTargetEvent, EventPayloadToRestParameters} from './EventTarget.js';
32
33
 
33
34
  export interface ListenerCallbackTuple<Events, T extends keyof Events> {
34
35
  thisObject?: Object;
@@ -36,7 +36,19 @@ import {Format} from './Color.js';
36
36
  import {Console} from './Console.js';
37
37
  import type {GenericEvents, EventDescriptor, EventTargetEvent} from './EventTarget.js';
38
38
  import {ObjectWrapper} from './Object.js';
39
- import {getLocalizedSettingsCategory, getRegisteredSettings, maybeRemoveSettingExtension, type RegExpSettingItem, registerSettingExtension, registerSettingsForTest, resetSettings, SettingCategory, type SettingExtensionOption, type SettingRegistration, SettingType} from './SettingRegistration.js';
39
+ import {
40
+ getLocalizedSettingsCategory,
41
+ getRegisteredSettings,
42
+ maybeRemoveSettingExtension,
43
+ type RegExpSettingItem,
44
+ registerSettingExtension,
45
+ registerSettingsForTest,
46
+ resetSettings,
47
+ SettingCategory,
48
+ type SettingExtensionOption,
49
+ type SettingRegistration,
50
+ SettingType,
51
+ } from './SettingRegistration.js';
40
52
 
41
53
  let settingsInstance: Settings|undefined;
42
54
 
@@ -36,7 +36,10 @@ import * as i18n from '../i18n/i18n.js';
36
36
  import * as Platform from '../platform/platform.js';
37
37
  import * as Root from '../root/root.js';
38
38
 
39
- import type {CanShowSurveyResult, ContextMenuDescriptor, EnumeratedHistogram, EventTypes, ExtensionDescriptor, InspectorFrontendHostAPI, LoadNetworkResourceResult, ShowSurveyResult, SyncInformation} from './InspectorFrontendHostAPI.js';
39
+ import type {
40
+ CanShowSurveyResult, ContextMenuDescriptor, EnumeratedHistogram, EventTypes, ExtensionDescriptor,
41
+ InspectorFrontendHostAPI, LoadNetworkResourceResult, ShowSurveyResult,
42
+ SyncInformation} from './InspectorFrontendHostAPI.js';
40
43
  import {EventDescriptors, Events} from './InspectorFrontendHostAPI.js';
41
44
  import {streamWrite as resourceLoaderStreamWrite} from './ResourceLoader.js';
42
45
 
@@ -7482,7 +7482,7 @@
7482
7482
  "message": "Unknown"
7483
7483
  },
7484
7484
  "panels/network/RequestTimingView.ts | waitingTtfb": {
7485
- "message": "Waiting (TTFB)"
7485
+ "message": "Waiting for server response"
7486
7486
  },
7487
7487
  "panels/network/RequestTimingView.ts | waterfall": {
7488
7488
  "message": "Waterfall"
@@ -7482,7 +7482,7 @@
7482
7482
  "message": "Ûńk̂ńôẃn̂"
7483
7483
  },
7484
7484
  "panels/network/RequestTimingView.ts | waitingTtfb": {
7485
- "message": "Ŵáît́îńĝ (T́T̂F́B̂)"
7485
+ "message": "Ŵáît́îńĝ f́ôŕ ŝér̂v́êŕ r̂éŝṕôńŝé"
7486
7486
  },
7487
7487
  "panels/network/RequestTimingView.ts | waterfall": {
7488
7488
  "message": "Ŵát̂ér̂f́âĺl̂"
@@ -163,8 +163,8 @@ export class CSSProperty {
163
163
 
164
164
  const range = this.range.relativeTo(this.ownerStyle.range.startLine, this.ownerStyle.range.startColumn);
165
165
  const indentation = this.ownerStyle.cssText ?
166
- this.detectIndentation(this.ownerStyle.cssText) :
167
- Common.Settings.Settings.instance().moduleSetting('textEditorIndent').get();
166
+ this.detectIndentation(this.ownerStyle.cssText) :
167
+ Common.Settings.Settings.instance().moduleSetting('textEditorIndent').get();
168
168
  const endIndentation = this.ownerStyle.cssText ? indentation.substring(0, this.ownerStyle.range.endColumn) : '';
169
169
  const text = new TextUtils.Text.Text(this.ownerStyle.cssText || '');
170
170
  const newStyleText = text.replaceRange(range, Platform.StringUtilities.sprintf(';%s;', propertyText));
@@ -172,8 +172,7 @@ export class CSSProperty {
172
172
  return this.ownerStyle.setText(styleText, majorChange);
173
173
  }
174
174
 
175
- static async formatStyle(
176
- styleText: string, indentation: string, endIndentation: string): Promise<string> {
175
+ static async formatStyle(styleText: string, indentation: string, endIndentation: string): Promise<string> {
177
176
  const doubleIndent = indentation.substring(endIndentation.length) + indentation;
178
177
  if (indentation) {
179
178
  indentation = '\n' + indentation;
@@ -197,7 +196,7 @@ export class CSSProperty {
197
196
  const disabledProperty = tokenType?.includes('comment') && isDisabledProperty(token);
198
197
  const isPropertyStart =
199
198
  (tokenType?.includes('string') || tokenType?.includes('meta') || tokenType?.includes('property') ||
200
- tokenType?.includes('variableName'));
199
+ tokenType?.includes('variableName'));
201
200
  if (disabledProperty) {
202
201
  result = result.trimEnd() + indentation + token;
203
202
  } else if (isPropertyStart) {
@@ -222,8 +221,8 @@ export class CSSProperty {
222
221
  // implementation takes special care to restore a single
223
222
  // whitespace token in this edge case. https://crbug.com/1071296
224
223
  const trimmedPropertyText = propertyText.trim();
225
- result =
226
- result.trimEnd() + indentation + trimmedPropertyText + (trimmedPropertyText.endsWith(':') ? ' ' : '') + token;
224
+ result = result.trimEnd() + indentation + trimmedPropertyText + (trimmedPropertyText.endsWith(':') ? ' ' : '') +
225
+ token;
227
226
  needsSemi = false;
228
227
  insideProperty = false;
229
228
  propertyName = '';
@@ -142,9 +142,6 @@ export class ChildTargetManager extends SDKModel<EventTypes> implements Protocol
142
142
  }
143
143
  const target = this.#targetManager.createTarget(
144
144
  targetInfo.targetId, targetName, type, this.#parentTarget, sessionId, undefined, undefined, targetInfo);
145
- if (type === Type.Worker || type === Type.ServiceWorker || type === Type.SharedWorker) {
146
- target.setInspectedURL(this.#parentTarget.inspectedURL());
147
- }
148
145
  this.#childTargetsBySessionId.set(sessionId, target);
149
146
  this.#childTargetsById.set(target.id(), target);
150
147
 
@@ -44,7 +44,8 @@ import {Events as DebuggerModelEvents} from './DebuggerModel.js';
44
44
  import {LogModel} from './LogModel.js';
45
45
  import {RemoteObject} from './RemoteObject.js';
46
46
  import {Events as ResourceTreeModelEvents, ResourceTreeModel} from './ResourceTreeModel.js';
47
- import type {ConsoleAPICall, ExceptionWithTimestamp, ExecutionContext, QueryObjectRequestedEvent} from './RuntimeModel.js';
47
+ import type {
48
+ ConsoleAPICall, ExceptionWithTimestamp, ExecutionContext, QueryObjectRequestedEvent} from './RuntimeModel.js';
48
49
  import {Events as RuntimeModelEvents, RuntimeModel} from './RuntimeModel.js';
49
50
  import type {Target} from './Target.js';
50
51
  import {TargetManager} from './TargetManager.js';
@@ -41,7 +41,9 @@ import type * as ProtocolProxyApi from '../../generated/protocol-proxy-api.js';
41
41
  import * as Protocol from '../../generated/protocol.js';
42
42
 
43
43
  import {Cookie} from './Cookie.js';
44
- import type {BlockedCookieWithReason, ContentData, ExtraRequestInfo, ExtraResponseInfo, MIME_TYPE, NameValue, WebBundleInfo, WebBundleInnerRequestInfo} from './NetworkRequest.js';
44
+ import type {
45
+ BlockedCookieWithReason, ContentData, ExtraRequestInfo, ExtraResponseInfo, MIME_TYPE, NameValue, WebBundleInfo,
46
+ WebBundleInnerRequestInfo} from './NetworkRequest.js';
45
47
  import {Events as NetworkRequestEvents, NetworkRequest} from './NetworkRequest.js';
46
48
  import type {Target} from './Target.js';
47
49
  import {Capability} from './Target.js';
@@ -41,7 +41,13 @@ import type {FunctionDetails} from './DebuggerModel.js';
41
41
  import {DebuggerModel} from './DebuggerModel.js';
42
42
  import {HeapProfilerModel} from './HeapProfilerModel.js';
43
43
  import type {ScopeRef} from './RemoteObject.js';
44
- import {RemoteFunction, RemoteObject, RemoteObjectImpl, RemoteObjectProperty, ScopeRemoteObject} from './RemoteObject.js';
44
+ import {
45
+ RemoteFunction,
46
+ RemoteObject,
47
+ RemoteObjectImpl,
48
+ RemoteObjectProperty,
49
+ ScopeRemoteObject,
50
+ } from './RemoteObject.js';
45
51
  import type {Target} from './Target.js';
46
52
  import {Capability, Type} from './Target.js';
47
53
  import {SDKModel} from './SDKModel.js';
@@ -8,6 +8,7 @@ import * as Platform from '../platform/platform.js';
8
8
 
9
9
  import type {FrameAssociated} from './FrameAssociated.js';
10
10
  import type {Target} from './Target.js';
11
+ import {Type} from './Target.js';
11
12
  import {Events as TargetManagerEvents, TargetManager} from './TargetManager.js';
12
13
  import type {SourceMap} from './SourceMap.js';
13
14
  import {TextSourceMap} from './SourceMap.js';
@@ -66,6 +67,14 @@ export class SourceMapManager<T extends FrameAssociated> extends Common.ObjectWr
66
67
  }
67
68
  }
68
69
 
70
+ private getBaseUrl(): Platform.DevToolsPath.UrlString {
71
+ let target: Target|null = this.#target;
72
+ while (target && target.type() !== Type.Frame) {
73
+ target = target.parentTarget();
74
+ }
75
+ return target?.inspectedURL() ?? Platform.DevToolsPath.EmptyUrlString;
76
+ }
77
+
69
78
  private inspectedURLChanged(event: Common.EventTarget.EventTargetEvent<Target>): void {
70
79
  if (event.data !== this.#target) {
71
80
  return;
@@ -156,7 +165,7 @@ export class SourceMapManager<T extends FrameAssociated> extends Common.ObjectWr
156
165
  }|null {
157
166
  // |#sourceURL| can be a random string, but is generally an absolute path.
158
167
  // Complete it to inspected page url for relative links.
159
- const resolvedSourceURL = Common.ParsedURL.ParsedURL.completeURL(this.#target.inspectedURL(), sourceURL);
168
+ const resolvedSourceURL = Common.ParsedURL.ParsedURL.completeURL(this.getBaseUrl(), sourceURL);
160
169
  if (!resolvedSourceURL) {
161
170
  return null;
162
171
  }
@@ -31,7 +31,11 @@
31
31
  import * as Platform from '../../core/platform/platform.js';
32
32
  import * as Root from '../../core/root/root.js';
33
33
  import * as Acorn from '../../third_party/acorn/acorn.js';
34
- import type * as CodeMirrorModule from '../../third_party/codemirror/codemirror-legacy.js'; // eslint-disable-line @typescript-eslint/no-unused-vars
34
+
35
+ // This file is required to bring some types into scope, even though it
36
+ // is not used.
37
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
38
+ import type * as CodeMirrorModule from '../../third_party/codemirror/codemirror-legacy.js';
35
39
 
36
40
  import {AcornTokenizer, ECMA_VERSION} from './AcornTokenizer.js';
37
41
  import {CSSFormatter} from './CSSFormatter.js';
@@ -122,8 +122,8 @@ interface DOMError {
122
122
  }
123
123
 
124
124
  interface ShadowRoot {
125
- elementFromPoint(x: number, y: number): Element | null;
126
- getSelection(): Selection | null;
125
+ elementFromPoint(x: number, y: number): Element|null;
126
+ getSelection(): Selection|null;
127
127
  }
128
128
 
129
129
  interface HTMLDialogElement {
@@ -30,7 +30,9 @@
30
30
 
31
31
  import * as Common from '../../core/common/common.js';
32
32
  import * as Platform from '../../core/platform/platform.js';
33
- import type * as FormatterActions from '../../entrypoints/formatter_worker/FormatterActions.js'; // eslint-disable-line rulesdir/es_modules_import
33
+
34
+ // eslint-disable-next-line rulesdir/es_modules_import
35
+ import type * as FormatterActions from '../../entrypoints/formatter_worker/FormatterActions.js';
34
36
 
35
37
  import {formatterWorkerPool} from './FormatterWorkerPool.js';
36
38
 
@@ -102,7 +102,7 @@ const
102
102
  documentDomainSettingWithoutOriginAgentClusterHeader:
103
103
  'Relaxing the same-origin policy by setting `document.domain` is deprecated, and will be disabled by default. To continue using this feature, please opt-out of origin-keyed agent clusters by sending an `Origin-Agent-Cluster: ?0` header along with the HTTP response for the document and frames. See https://developer.chrome.com/blog/immutable-document-domain/ for more details.',
104
104
  /**
105
- *@description TODO(crbug.com/1320338): Description needed for translation
105
+ *@description Warning displayed to developers when the non-standard `Event.path` API is used to notify them that this API is deprecated.
106
106
  */
107
107
  eventPath: '`Event.path` is deprecated and will be removed. Please use `Event.composedPath()` instead.',
108
108
  /**
@@ -8,7 +8,11 @@ import * as Bindings from '../../models/bindings/bindings.js';
8
8
  import * as TextUtils from '../../models/text_utils/text_utils.js';
9
9
  import * as Workspace from '../../models/workspace/workspace.js';
10
10
 
11
- import {ContentSecurityPolicyIssue, trustedTypesPolicyViolationCode, trustedTypesSinkViolationCode} from './ContentSecurityPolicyIssue.js';
11
+ import {
12
+ ContentSecurityPolicyIssue,
13
+ trustedTypesPolicyViolationCode,
14
+ trustedTypesSinkViolationCode,
15
+ } from './ContentSecurityPolicyIssue.js';
12
16
  import type {Issue, IssueKind} from './Issue.js';
13
17
  import {toZeroBasedLocation} from './Issue.js';
14
18
  import type {IssueAddedEvent, IssuesManager} from './IssuesManager.js';
@@ -29,25 +29,22 @@
29
29
  */
30
30
 
31
31
  import * as CodeMirror from '../../third_party/codemirror.next/codemirror.next.js';
32
- type Tokenizer =
33
- (line: string, callback: (value: string, style: string|null) => void) => void;
32
+ type Tokenizer = (line: string, callback: (value: string, style: string|null) => void) => void;
34
33
 
35
34
  export function createCssTokenizer(): Tokenizer {
36
- async function tokenize(
37
- line: string, callback: (value: string, style: string|null) => void): Promise<void> {
38
- const streamParser = await CodeMirror.cssStreamParser();
39
- const stream = new CodeMirror.StringStream();
40
- stream.string = line;
35
+ async function tokenize(line: string, callback: (value: string, style: string|null) => void): Promise<void> {
36
+ const streamParser = await CodeMirror.cssStreamParser();
37
+ const stream = new CodeMirror.StringStream();
38
+ stream.string = line;
41
39
 
42
- const startState = streamParser.startState();
43
- let lastPos = stream.pos;
44
- while (!stream.eol()) {
45
- const token = streamParser.token(stream, startState);
46
- const segment = stream.current().substring(lastPos, stream.pos);
47
- callback(segment, token);
48
- lastPos = stream.pos;
49
- }
40
+ const startState = streamParser.startState();
41
+ let lastPos = stream.pos;
42
+ while (!stream.eol()) {
43
+ const token = streamParser.token(stream, startState);
44
+ const segment = stream.current().substring(lastPos, stream.pos);
45
+ callback(segment, token);
46
+ lastPos = stream.pos;
50
47
  }
51
- return tokenize;
48
+ }
49
+ return tokenize;
52
50
  }
53
-
@@ -1211,7 +1211,7 @@ export class TimelineModelImpl {
1211
1211
 
1212
1212
  private processBrowserEvent(event: SDK.TracingModel.Event): void {
1213
1213
  if (event.name === RecordType.LatencyInfoFlow) {
1214
- if (event.args.chrome_latency_info.trace_id) {
1214
+ if (event.args.chrome_latency_info?.trace_id) {
1215
1215
  this.knownInputEvents.add(event.args.chrome_latency_info.trace_id);
1216
1216
  }
1217
1217
  return;
@@ -28,14 +28,17 @@
28
28
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
29
  */
30
30
 
31
- import indexedDBViewsStyles from './indexedDBViews.css.js';
32
31
  import * as i18n from '../../core/i18n/i18n.js';
32
+
33
+ import indexedDBViewsStyles from './indexedDBViews.css.js';
34
+
33
35
  import type * as SDK from '../../core/sdk/sdk.js';
34
36
  import * as DataGrid from '../../ui/legacy/components/data_grid/data_grid.js';
35
37
  import * as ObjectUI from '../../ui/legacy/components/object_ui/object_ui.js';
36
38
  import * as UI from '../../ui/legacy/legacy.js';
37
39
 
38
- import type {Database, DatabaseId, Entry, Index, IndexedDBModel, ObjectStore, ObjectStoreMetadata} from './IndexedDBModel.js';
40
+ import type {
41
+ Database, DatabaseId, Entry, Index, IndexedDBModel, ObjectStore, ObjectStoreMetadata} from './IndexedDBModel.js';
39
42
 
40
43
  const UIStrings = {
41
44
  /**
@@ -56,7 +56,15 @@ import {ConsoleFilter, FilterType} from './ConsoleFilter.js';
56
56
  import {ConsolePinPane} from './ConsolePinPane.js';
57
57
  import {ConsolePrompt, Events as ConsolePromptEvents} from './ConsolePrompt.js';
58
58
  import {ConsoleSidebar, Events} from './ConsoleSidebar.js';
59
- import {ConsoleCommand, ConsoleCommandResult, ConsoleGroupViewMessage, ConsoleTableMessageView, ConsoleViewMessage, getMessageForElement, MaxLengthForLinks} from './ConsoleViewMessage.js';
59
+ import {
60
+ ConsoleCommand,
61
+ ConsoleCommandResult,
62
+ ConsoleGroupViewMessage,
63
+ ConsoleTableMessageView,
64
+ ConsoleViewMessage,
65
+ getMessageForElement,
66
+ MaxLengthForLinks,
67
+ } from './ConsoleViewMessage.js';
60
68
 
61
69
  import type {ConsoleViewportElement, ConsoleViewportProvider} from './ConsoleViewport.js';
62
70
  import {ConsoleViewport} from './ConsoleViewport.js';
@@ -14,7 +14,9 @@ import * as UI from '../../ui/legacy/legacy.js';
14
14
  import type * as Protocol from '../../generated/protocol.js';
15
15
 
16
16
  import cssOverviewCompletedViewStyles from './cssOverviewCompletedView.css.js';
17
- import type {OverviewController, PopulateNodesEvent, PopulateNodesEventNodes, PopulateNodesEventNodeTypes} from './CSSOverviewController.js';
17
+ import type {
18
+ OverviewController, PopulateNodesEvent, PopulateNodesEventNodes, PopulateNodesEventNodeTypes} from
19
+ './CSSOverviewController.js';
18
20
  import {Events as CSSOverViewControllerEvents} from './CSSOverviewController.js';
19
21
  import {CSSOverviewSidebarPanel, SidebarEvents} from './CSSOverviewSidebarPanel.js';
20
22
  import type {UnusedDeclaration} from './CSSOverviewUnusedDeclarations.js';
@@ -212,4 +212,3 @@ export class PropertiesWidget extends UI.ThrottledWidget.ThrottledWidget {
212
212
  this.registerCSSFiles([propertiesWidgetStyles]);
213
213
  }
214
214
  }
215
-
@@ -61,7 +61,13 @@ import {StylePropertyHighlighter} from './StylePropertyHighlighter.js';
61
61
  import stylesSidebarPaneStyles from './stylesSidebarPane.css.js';
62
62
 
63
63
  import type {StylePropertyTreeElement} from './StylePropertyTreeElement.js';
64
- import {StylePropertiesSection, BlankStylePropertiesSection, KeyframePropertiesSection, HighlightPseudoStylePropertiesSection} from './StylePropertiesSection.js';
64
+ import {
65
+ StylePropertiesSection,
66
+ BlankStylePropertiesSection,
67
+ KeyframePropertiesSection,
68
+ HighlightPseudoStylePropertiesSection,
69
+ } from './StylePropertiesSection.js';
70
+
65
71
  import * as LayersWidget from './LayersWidget.js';
66
72
 
67
73
  const UIStrings = {
@@ -12,7 +12,8 @@ import * as EmulationModel from '../../models/emulation/emulation.js';
12
12
  import * as UI from '../../ui/legacy/legacy.js';
13
13
  import * as Emulation from '../emulation/emulation.js';
14
14
 
15
- import type {AuditProgressChangedEvent, PageAuditabilityChangedEvent, PageWarningsChangedEvent} from './LighthouseController.js';
15
+ import type {
16
+ AuditProgressChangedEvent, PageAuditabilityChangedEvent, PageWarningsChangedEvent} from './LighthouseController.js';
16
17
  import {Events, LighthouseController} from './LighthouseController.js';
17
18
  import lighthousePanelStyles from './lighthousePanel.css.js';
18
19
  import type {LighthouseRun} from './LighthouseProtocolService.js';
@@ -71,13 +71,20 @@ export class TimespanView extends UI.Dialog.Dialog {
71
71
  const dialogRoot = UI.Utils.createShadowRootWithCoreStyles(
72
72
  this.contentElement, {cssFile: [lighthouseDialogStyles], delegatesFocus: undefined});
73
73
 
74
- this.endButton = UI.UIUtils.createTextButton(i18nString(UIStrings.endTimespan), this.endTimespan.bind(this));
74
+ this.endButton = UI.UIUtils.createTextButton(
75
+ i18nString(UIStrings.endTimespan),
76
+ this.endTimespan.bind(this),
77
+ undefined,
78
+ true,
79
+ );
75
80
  const cancelButton = UI.UIUtils.createTextButton(i18nString(UIStrings.cancel), this.cancel.bind(this));
76
81
  const fragment = UI.Fragment.Fragment.build`
77
82
  <div class="lighthouse-view vbox">
78
83
  <h2 $="status-header"></h2>
79
- ${this.endButton}
84
+ <div class="lighthouse-action-buttons hbox">
80
85
  ${cancelButton}
86
+ ${this.endButton}
87
+ </div>
81
88
  </div>
82
89
  `;
83
90
 
@@ -117,3 +117,8 @@
117
117
  display: block;
118
118
  margin-top: 5px;
119
119
  }
120
+
121
+ .lighthouse-action-buttons {
122
+ align-self: end;
123
+ column-gap: 8px;
124
+ }
@@ -11,7 +11,9 @@ import * as UI from '../../ui/legacy/legacy.js';
11
11
  import {MobileThrottlingSelector} from './MobileThrottlingSelector.js';
12
12
  import {NetworkThrottlingSelector} from './NetworkThrottlingSelector.js';
13
13
 
14
- import type {Conditions, ConditionsList, MobileThrottlingConditionsGroup, NetworkThrottlingConditionsGroup} from './ThrottlingPresets.js';
14
+ import type {
15
+ Conditions, ConditionsList, MobileThrottlingConditionsGroup, NetworkThrottlingConditionsGroup} from
16
+ './ThrottlingPresets.js';
15
17
  import {ThrottlingPresets} from './ThrottlingPresets.js';
16
18
 
17
19
  const UIStrings = {
@@ -57,7 +57,11 @@ import {Events, NetworkGroupNode, NetworkRequestNode} from './NetworkDataGridNod
57
57
  import {NetworkFrameGrouper} from './NetworkFrameGrouper.js';
58
58
  import {NetworkLogViewColumns} from './NetworkLogViewColumns.js';
59
59
  import type {NetworkTimeCalculator} from './NetworkTimeCalculator.js';
60
- import {NetworkTimeBoundary, NetworkTransferDurationCalculator, NetworkTransferTimeCalculator} from './NetworkTimeCalculator.js';
60
+ import {
61
+ NetworkTimeBoundary,
62
+ NetworkTransferDurationCalculator,
63
+ NetworkTransferTimeCalculator,
64
+ } from './NetworkTimeCalculator.js';
61
65
 
62
66
  const UIStrings = {
63
67
  /**
@@ -14,7 +14,9 @@ import type {NetworkNode} from './NetworkDataGridNode.js';
14
14
  import {NetworkRequestNode} from './NetworkDataGridNode.js';
15
15
  import type {NetworkLogView} from './NetworkLogView.js';
16
16
  import {NetworkManageCustomHeadersView} from './NetworkManageCustomHeadersView.js';
17
- import type {NetworkTimeCalculator, NetworkTransferDurationCalculator, NetworkTransferTimeCalculator} from './NetworkTimeCalculator.js';
17
+ import type {
18
+ NetworkTimeCalculator, NetworkTransferDurationCalculator, NetworkTransferTimeCalculator} from
19
+ './NetworkTimeCalculator.js';
18
20
  import {NetworkWaterfallColumn} from './NetworkWaterfallColumn.js';
19
21
  import {RequestInitiatorView} from './RequestInitiatorView.js';
20
22
 
@@ -102,7 +102,7 @@ const UIStrings = {
102
102
  /**
103
103
  *@description Text in Request Timing View of the Network panel
104
104
  */
105
- waitingTtfb: 'Waiting (TTFB)',
105
+ waitingTtfb: 'Waiting for server response',
106
106
  /**
107
107
  *@description Text in Signed Exchange Info View of the Network panel
108
108
  */
@@ -38,7 +38,14 @@ import type * as SDK from '../../core/sdk/sdk.js';
38
38
  import * as UI from '../../ui/legacy/legacy.js';
39
39
 
40
40
  import type {HeapSnapshotGridNode} from './HeapSnapshotGridNodes.js';
41
- import {AllocationGridNode, HeapSnapshotConstructorNode, HeapSnapshotGenericObjectNode, HeapSnapshotRetainingObjectNode, HeapSnapshotObjectNode, HeapSnapshotDiffNode} from './HeapSnapshotGridNodes.js';
41
+ import {
42
+ AllocationGridNode,
43
+ HeapSnapshotConstructorNode,
44
+ HeapSnapshotGenericObjectNode,
45
+ HeapSnapshotRetainingObjectNode,
46
+ HeapSnapshotObjectNode,
47
+ HeapSnapshotDiffNode,
48
+ } from './HeapSnapshotGridNodes.js';
42
49
  import type {HeapSnapshotProxy} from './HeapSnapshotProxy.js';
43
50
  import type {HeapProfileHeader} from './HeapSnapshotView.js';
44
51
  import type {DataDisplayDelegate} from './ProfileHeader.js';
@@ -38,7 +38,9 @@ import * as DataGrid from '../../ui/legacy/components/data_grid/data_grid.js';
38
38
  import * as UI from '../../ui/legacy/legacy.js';
39
39
 
40
40
  import type {ChildrenProvider} from './ChildrenProvider.js';
41
- import type {AllocationDataGrid, HeapSnapshotConstructorsDataGrid, HeapSnapshotDiffDataGrid, HeapSnapshotSortableDataGrid} from './HeapSnapshotDataGrids.js';
41
+ import type {
42
+ AllocationDataGrid, HeapSnapshotConstructorsDataGrid, HeapSnapshotDiffDataGrid, HeapSnapshotSortableDataGrid} from
43
+ './HeapSnapshotDataGrids.js';
42
44
  import {HeapSnapshotSortableDataGridEvents} from './HeapSnapshotDataGrids.js';
43
45
  import type {HeapSnapshotProviderProxy, HeapSnapshotProxy} from './HeapSnapshotProxy.js';
44
46
  import type {DataDisplayDelegate} from './ProfileHeader.js';
@@ -44,7 +44,14 @@ import * as Components from '../../ui/legacy/components/utils/utils.js';
44
44
  import * as UI from '../../ui/legacy/legacy.js';
45
45
 
46
46
  import type {HeapSnapshotSortableDataGrid} from './HeapSnapshotDataGrids.js';
47
- import {AllocationDataGrid, HeapSnapshotSortableDataGridEvents, HeapSnapshotConstructorsDataGrid, HeapSnapshotDiffDataGrid, HeapSnapshotRetainmentDataGrid, HeapSnapshotContainmentDataGrid} from './HeapSnapshotDataGrids.js';
47
+ import {
48
+ AllocationDataGrid,
49
+ HeapSnapshotSortableDataGridEvents,
50
+ HeapSnapshotConstructorsDataGrid,
51
+ HeapSnapshotDiffDataGrid,
52
+ HeapSnapshotRetainmentDataGrid,
53
+ HeapSnapshotContainmentDataGrid,
54
+ } from './HeapSnapshotDataGrids.js';
48
55
  import type {AllocationGridNode, HeapSnapshotGridNode} from './HeapSnapshotGridNodes.js';
49
56
  import {HeapSnapshotGenericObjectNode} from './HeapSnapshotGridNodes.js';
50
57
  import type {HeapSnapshotProxy} from './HeapSnapshotProxy.js';
@@ -53,7 +60,12 @@ import type {IdsRangeChangedEvent} from './HeapTimelineOverview.js';
53
60
  import {HeapTimelineOverview, Events, Samples} from './HeapTimelineOverview.js';
54
61
  import * as ModuleUIStrings from './ModuleUIStrings.js';
55
62
  import type {DataDisplayDelegate} from './ProfileHeader.js';
56
- import {Events as ProfileHeaderEvents, ProfileEvents as ProfileTypeEvents, ProfileHeader, ProfileType} from './ProfileHeader.js';
63
+ import {
64
+ Events as ProfileHeaderEvents,
65
+ ProfileEvents as ProfileTypeEvents,
66
+ ProfileHeader,
67
+ ProfileType,
68
+ } from './ProfileHeader.js';
57
69
  import {ProfileSidebarTreeElement} from './ProfileSidebarTreeElement.js';
58
70
  import {instance} from './ProfileTypeRegistry.js';
59
71
 
@@ -45,7 +45,13 @@ import {DebuggerPausedMessage} from './DebuggerPausedMessage.js';
45
45
  import sourcesPanelStyles from './sourcesPanel.css.js';
46
46
 
47
47
  import type {NavigatorView} from './NavigatorView.js';
48
- import {ContentScriptsNavigatorView, FilesNavigatorView, NetworkNavigatorView, OverridesNavigatorView, SnippetsNavigatorView} from './SourcesNavigator.js';
48
+ import {
49
+ ContentScriptsNavigatorView,
50
+ FilesNavigatorView,
51
+ NetworkNavigatorView,
52
+ OverridesNavigatorView,
53
+ SnippetsNavigatorView,
54
+ } from './SourcesNavigator.js';
49
55
  import {Events, SourcesView} from './SourcesView.js';
50
56
  import {ThreadsSidebarPane} from './ThreadsSidebarPane.js';
51
57
  import {UISourceCodeFrame} from './UISourceCodeFrame.js';
@@ -90,7 +90,7 @@ export class TimelineController implements SDK.TargetManager.SDKModelObserver<SD
90
90
  // 'disabled-by-default-v8.cpu_profiler'
91
91
  // └ default: on, option: enableJSSampling
92
92
  const categoriesArray = [
93
- '-*',
93
+ Root.Runtime.experiments.isEnabled('timelineShowAllEvents') ? '*' : '-*',
94
94
  TimelineModel.TimelineModel.TimelineModelImpl.Category.Console,
95
95
  TimelineModel.TimelineModel.TimelineModelImpl.Category.UserTiming,
96
96
  'devtools.timeline',
@@ -17,7 +17,10 @@ import type {PerformanceModel, WindowChangedEvent} from './PerformanceModel.js';
17
17
  import {Events as PerformanceModelEvents} from './PerformanceModel.js';
18
18
  import {TimelineDetailsView} from './TimelineDetailsView.js';
19
19
  import {TimelineRegExp} from './TimelineFilters.js';
20
- import {Events as TimelineFlameChartDataProviderEvents, TimelineFlameChartDataProvider} from './TimelineFlameChartDataProvider.js';
20
+ import {
21
+ Events as TimelineFlameChartDataProviderEvents,
22
+ TimelineFlameChartDataProvider,
23
+ } from './TimelineFlameChartDataProvider.js';
21
24
  import {TimelineFlameChartNetworkDataProvider} from './TimelineFlameChartNetworkDataProvider.js';
22
25
  import type {TimelineModeViewDelegate} from './TimelinePanel.js';
23
26
  import {TimelineSelection} from './TimelinePanel.js';
@@ -10,7 +10,12 @@ import * as UI from '../../ui/legacy/legacy.js';
10
10
  import timelineHistoryManagerStyles from './timelineHistoryManager.css.js';
11
11
 
12
12
  import type {PerformanceModel} from './PerformanceModel.js';
13
- import {TimelineEventOverviewCPUActivity, TimelineEventOverviewFrames, TimelineEventOverviewNetwork, TimelineEventOverviewResponsiveness} from './TimelineEventOverview.js';
13
+ import {
14
+ TimelineEventOverviewCPUActivity,
15
+ TimelineEventOverviewFrames,
16
+ TimelineEventOverviewNetwork,
17
+ TimelineEventOverviewResponsiveness,
18
+ } from './TimelineEventOverview.js';
14
19
 
15
20
  const UIStrings = {
16
21
  /**
@@ -57,7 +57,16 @@ import {Events, PerformanceModel} from './PerformanceModel.js';
57
57
  import type {Client} from './TimelineController.js';
58
58
  import {TimelineController} from './TimelineController.js';
59
59
  import type {TimelineEventOverview} from './TimelineEventOverview.js';
60
- import {TimelineEventOverviewCoverage, TimelineEventOverviewCPUActivity, TimelineEventOverviewFrames, TimelineEventOverviewInput, TimelineEventOverviewMemory, TimelineEventOverviewNetwork, TimelineEventOverviewResponsiveness, TimelineFilmStripOverview} from './TimelineEventOverview.js';
60
+ import {
61
+ TimelineEventOverviewCoverage,
62
+ TimelineEventOverviewCPUActivity,
63
+ TimelineEventOverviewFrames,
64
+ TimelineEventOverviewInput,
65
+ TimelineEventOverviewMemory,
66
+ TimelineEventOverviewNetwork,
67
+ TimelineEventOverviewResponsiveness,
68
+ TimelineFilmStripOverview,
69
+ } from './TimelineEventOverview.js';
61
70
  import {TimelineFlameChartView} from './TimelineFlameChartView.js';
62
71
  import {TimelineHistoryManager} from './TimelineHistoryManager.js';
63
72
  import {TimelineLoader} from './TimelineLoader.js';
@@ -6,7 +6,9 @@ import * as Common from '../../../core/common/common.js';
6
6
  import * as Platform from '../../../core/platform/platform.js';
7
7
 
8
8
  import {EdgeTypes, EdgeView, generateEdgePortIdsByData} from './EdgeView.js';
9
- import type {NodeCreationData, NodeParamConnectionData, NodeParamDisconnectionData, NodesConnectionData, NodesDisconnectionData, NodesDisconnectionDataWithDestination, ParamCreationData} from './GraphStyle.js';
9
+ import type {
10
+ NodeCreationData, NodeParamConnectionData, NodeParamDisconnectionData, NodesConnectionData, NodesDisconnectionData,
11
+ NodesDisconnectionDataWithDestination, ParamCreationData} from './GraphStyle.js';
10
12
  import {NodeLabelGenerator, NodeView} from './NodeView.js';
11
13
 
12
14
  // A class that tracks all the nodes and edges of an audio graph.
@@ -3,7 +3,14 @@
3
3
  // found in the LICENSE file.
4
4
 
5
5
  import type {Point, Size} from './GraphStyle.js';
6
- import {AudioParamRadius, InputPortRadius, LeftSideTopPadding, TotalInputPortHeight, TotalOutputPortHeight, TotalParamPortHeight} from './GraphStyle.js';
6
+ import {
7
+ AudioParamRadius,
8
+ InputPortRadius,
9
+ LeftSideTopPadding,
10
+ TotalInputPortHeight,
11
+ TotalOutputPortHeight,
12
+ TotalParamPortHeight,
13
+ } from './GraphStyle.js';
7
14
 
8
15
  /**
9
16
  * Calculate the x, y value of input port.
@@ -5,7 +5,19 @@
5
5
  import * as UI from '../../../ui/legacy/legacy.js';
6
6
 
7
7
  import type {NodeCreationData, NodeLayout, Port} from './GraphStyle.js';
8
- import {BottomPaddingWithoutParam, BottomPaddingWithParam, LeftMarginOfText, LeftSideTopPadding, NodeLabelFontStyle, ParamLabelFontStyle, PortTypes, RightMarginOfText, TotalInputPortHeight, TotalOutputPortHeight, TotalParamPortHeight} from './GraphStyle.js';
8
+ import {
9
+ BottomPaddingWithoutParam,
10
+ BottomPaddingWithParam,
11
+ LeftMarginOfText,
12
+ LeftSideTopPadding,
13
+ NodeLabelFontStyle,
14
+ ParamLabelFontStyle,
15
+ PortTypes,
16
+ RightMarginOfText,
17
+ TotalInputPortHeight,
18
+ TotalOutputPortHeight,
19
+ TotalParamPortHeight,
20
+ } from './GraphStyle.js';
9
21
  import {calculateInputPortXY, calculateOutputPortXY, calculateParamPortXY} from './NodeRendererUtility.js';
10
22
 
11
23
  // A class that represents a node of a graph, consisting of the information needed to layout the
@@ -7,7 +7,14 @@ import * as AudioContextSelector from './AudioContextSelector.js';
7
7
  import * as WebAudioModel from './WebAudioModel.js';
8
8
  import * as WebAudioView from './WebAudioView.js';
9
9
 
10
- export {EdgeView, GraphManager, GraphStyle, GraphView, NodeRendererUtility, NodeView} from './graph_visualizer/graph_visualizer.js';
10
+ export {
11
+ EdgeView,
12
+ GraphManager,
13
+ GraphStyle,
14
+ GraphView,
15
+ NodeRendererUtility,
16
+ NodeView,
17
+ } from './graph_visualizer/graph_visualizer.js';
11
18
  export {
12
19
  AudioContextContentBuilder,
13
20
  AudioContextSelector,
@@ -27,8 +27,21 @@
27
27
  }
28
28
 
29
29
  button {
30
+ /*
31
+ --override-button-no-right-border-radius decides
32
+ whether button has border radius on the right or not.
33
+
34
+ It works as a boolean variable:
35
+ * If it is 1, `--button-has-right-border-radius` becomes a 0 multiplier
36
+ for the border-radius-top-right and border-radius-bottom-right properties.
37
+ * If it is not set or 0, it becomes a 1 multiplier
38
+ for the same properties which means they'll continue to have the given
39
+ border radius.
40
+ */
41
+ --button-has-right-border-radius: calc(1 - var(--override-button-no-right-border-radius, 0));
42
+
30
43
  align-items: center;
31
- border-radius: 4px;
44
+ border-radius: 4px calc(var(--button-has-right-border-radius) * 4px) calc(var(--button-has-right-border-radius) * 4px) 4px;
32
45
  display: inline-flex;
33
46
  font-family: inherit;
34
47
  font-size: 12px;
@@ -42,7 +55,7 @@ button {
42
55
 
43
56
  button.small {
44
57
  height: 18px;
45
- border-radius: 2px;
58
+ border-radius: 2px calc(var(--button-has-right-border-radius) * 2px) calc(var(--button-has-right-border-radius) * 2px) 2px;
46
59
  }
47
60
 
48
61
  button:focus-visible {
@@ -52,7 +65,7 @@ button:focus-visible {
52
65
  button.toolbar,
53
66
  button.round {
54
67
  background: transparent;
55
- border-radius: 2px;
68
+ border-radius: 2px calc(var(--button-has-right-border-radius) * 2px) calc(var(--button-has-right-border-radius) * 2px) 2px;
56
69
  border: none;
57
70
  height: 24px;
58
71
  width: 24px;
@@ -16,7 +16,15 @@ const coordinator = Coordinator.RenderCoordinator.RenderCoordinator.instance();
16
16
 
17
17
  import {addColumnVisibilityCheckboxes, addSortableColumnItems} from './DataGridContextMenuUtils.js';
18
18
  import type {CellPosition, Column, Row, SortState} from './DataGridUtils.js';
19
- import {calculateColumnWidthPercentageFromWeighting, calculateFirstFocusableCell, getCellTitleFromCellContent, getRowEntryForColumnId, handleArrowKeyNavigation, renderCellValue, SortDirection} from './DataGridUtils.js';
19
+ import {
20
+ calculateColumnWidthPercentageFromWeighting,
21
+ calculateFirstFocusableCell,
22
+ getCellTitleFromCellContent,
23
+ getRowEntryForColumnId,
24
+ handleArrowKeyNavigation,
25
+ renderCellValue,
26
+ SortDirection,
27
+ } from './DataGridUtils.js';
20
28
 
21
29
  import * as i18n from '../../../core/i18n/i18n.js';
22
30
  const UIStrings = {
@@ -33,6 +33,16 @@ primaryButton.title = 'Custom title';
33
33
  primaryButton.onclick = () => alert('clicked');
34
34
  appendButton(primaryButton);
35
35
 
36
+ const primaryButtonWithoutRightBorderRadius = new Buttons.Button.Button();
37
+ primaryButtonWithoutRightBorderRadius.data = {
38
+ variant: Buttons.Button.Variant.PRIMARY,
39
+ };
40
+ primaryButtonWithoutRightBorderRadius.style.setProperty('--override-button-no-right-border-radius', '1');
41
+ primaryButtonWithoutRightBorderRadius.innerText = 'No right border radius';
42
+ primaryButtonWithoutRightBorderRadius.title = 'Custom title';
43
+ primaryButtonWithoutRightBorderRadius.onclick = () => alert('clicked');
44
+ appendButton(primaryButtonWithoutRightBorderRadius);
45
+
36
46
  // Primary (forced active)
37
47
  const forcedActive = new Buttons.Button.Button();
38
48
  forcedActive.data = {
@@ -9,13 +9,21 @@ import linearMemoryInspectorStyles from './linearMemoryInspector.css.js';
9
9
 
10
10
  const {render, html} = LitHtml;
11
11
 
12
- import type {AddressInputChangedEvent, HistoryNavigationEvent, LinearMemoryNavigatorData, PageNavigationEvent} from './LinearMemoryNavigator.js';
12
+ import type {
13
+ AddressInputChangedEvent, HistoryNavigationEvent, LinearMemoryNavigatorData, PageNavigationEvent} from
14
+ './LinearMemoryNavigator.js';
13
15
  import {Mode, Navigation, LinearMemoryNavigator} from './LinearMemoryNavigator.js';
14
- import type {EndiannessChangedEvent, LinearMemoryValueInterpreterData, ValueTypeToggledEvent} from './LinearMemoryValueInterpreter.js';
16
+ import type {
17
+ EndiannessChangedEvent, LinearMemoryValueInterpreterData, ValueTypeToggledEvent} from
18
+ './LinearMemoryValueInterpreter.js';
15
19
  import {LinearMemoryValueInterpreter} from './LinearMemoryValueInterpreter.js';
16
20
  import type {ByteSelectedEvent, LinearMemoryViewerData, ResizeEvent} from './LinearMemoryViewer.js';
17
21
  import type {ValueType, ValueTypeMode} from './ValueInterpreterDisplayUtils.js';
18
- import {VALUE_INTEPRETER_MAX_NUM_BYTES, Endianness, getDefaultValueTypeMapping} from './ValueInterpreterDisplayUtils.js';
22
+ import {
23
+ VALUE_INTEPRETER_MAX_NUM_BYTES,
24
+ Endianness,
25
+ getDefaultValueTypeMapping,
26
+ } from './ValueInterpreterDisplayUtils.js';
19
27
  import {formatAddress, parseAddress} from './LinearMemoryInspectorUtils.js';
20
28
  import type {JumpToPointerAddressEvent, ValueTypeModeChangedEvent} from './ValueInterpreterDisplay.js';
21
29
  import {LinearMemoryViewer} from './LinearMemoryViewer.js';
@@ -9,7 +9,18 @@ import * as ComponentHelpers from '../helpers/helpers.js';
9
9
  import * as IconButton from '../icon_button/icon_button.js';
10
10
 
11
11
  import valueInterpreterDisplayStyles from './valueInterpreterDisplay.css.js';
12
- import {Endianness, format, getDefaultValueTypeMapping, getPointerAddress, isNumber, isPointer, isValidMode, VALUE_TYPE_MODE_LIST, ValueType, ValueTypeMode} from './ValueInterpreterDisplayUtils.js';
12
+ import {
13
+ Endianness,
14
+ format,
15
+ getDefaultValueTypeMapping,
16
+ getPointerAddress,
17
+ isNumber,
18
+ isPointer,
19
+ isValidMode,
20
+ VALUE_TYPE_MODE_LIST,
21
+ ValueType,
22
+ ValueTypeMode,
23
+ } from './ValueInterpreterDisplayUtils.js';
13
24
 
14
25
  const UIStrings = {
15
26
  /**
@@ -11,7 +11,13 @@ import * as Coordinator from '../render_coordinator/render_coordinator.js';
11
11
  import treeOutlineStyles from './treeOutline.css.js';
12
12
 
13
13
  import type {TreeNodeId, TreeNode, TreeNodeWithChildren} from './TreeOutlineUtils.js';
14
- import {findNextNodeForTreeOutlineKeyboardNavigation, getNodeChildren, getPathToTreeNode, isExpandableNode, trackDOMNodeToTreeNode} from './TreeOutlineUtils.js';
14
+ import {
15
+ findNextNodeForTreeOutlineKeyboardNavigation,
16
+ getNodeChildren,
17
+ getPathToTreeNode,
18
+ isExpandableNode,
19
+ trackDOMNodeToTreeNode,
20
+ } from './TreeOutlineUtils.js';
15
21
 
16
22
  const coordinator = Coordinator.RenderCoordinator.RenderCoordinator.instance();
17
23
 
@@ -95,16 +101,15 @@ export class TreeOutline<TreeNodeDataType> extends HTMLElement {
95
101
  */
96
102
  #nodeIdPendingFocus: TreeNodeId|null = null;
97
103
  #selectedTreeNode: TreeNode<TreeNodeDataType>|null = null;
98
- #defaultRenderer =
99
- (node: TreeNode<TreeNodeDataType>, _state: {isExpanded: boolean}): LitHtml.TemplateResult => {
100
- if (typeof node.treeNodeData !== 'string') {
101
- console.warn(`The default TreeOutline renderer simply stringifies its given value. You passed in ${
102
- JSON.stringify(
103
- node.treeNodeData, null,
104
- 2)}. Consider providing a different defaultRenderer that can handle nodes of this type.`);
105
- }
106
- return LitHtml.html`${String(node.treeNodeData)}`;
107
- };
104
+ #defaultRenderer = (node: TreeNode<TreeNodeDataType>, _state: {isExpanded: boolean}): LitHtml.TemplateResult => {
105
+ if (typeof node.treeNodeData !== 'string') {
106
+ console.warn(`The default TreeOutline renderer simply stringifies its given value. You passed in ${
107
+ JSON.stringify(
108
+ node.treeNodeData, null,
109
+ 2)}. Consider providing a different defaultRenderer that can handle nodes of this type.`);
110
+ }
111
+ return LitHtml.html`${String(node.treeNodeData)}`;
112
+ };
108
113
  #nodeFilter?: ((node: TreeNodeDataType) => FilterOption);
109
114
 
110
115
  /**
@@ -66,8 +66,8 @@ export class Fragment {
66
66
 
67
67
  const template = document.createElement('template');
68
68
  template.innerHTML = html;
69
- const walker = template.ownerDocument.createTreeWalker(
70
- template.content, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_TEXT, null);
69
+ const walker =
70
+ template.ownerDocument.createTreeWalker(template.content, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_TEXT, null);
71
71
  let valueIndex = 0;
72
72
  const emptyTextNodes = [];
73
73
  const binds: Bind[] = [];
@@ -15,7 +15,18 @@ import type {ToolbarItem} from './Toolbar.js';
15
15
  import {Toolbar, ToolbarMenuButton} from './Toolbar.js';
16
16
  import {createTextChild} from './UIUtils.js';
17
17
  import type {TabbedViewLocation, View, ViewLocation, ViewLocationResolver} from './View.js';
18
- import {getRegisteredLocationResolvers, getRegisteredViewExtensions, maybeRemoveViewExtension, registerLocationResolver, registerViewExtension, ViewLocationCategoryValues, ViewLocationValues, ViewPersistence, type ViewRegistration, resetViewRegistration} from './ViewRegistration.js';
18
+ import {
19
+ getRegisteredLocationResolvers,
20
+ getRegisteredViewExtensions,
21
+ maybeRemoveViewExtension,
22
+ registerLocationResolver,
23
+ registerViewExtension,
24
+ ViewLocationCategoryValues,
25
+ ViewLocationValues,
26
+ ViewPersistence,
27
+ type ViewRegistration,
28
+ resetViewRegistration,
29
+ } from './ViewRegistration.js';
19
30
  import type {Widget, WidgetElement} from './Widget.js';
20
31
  import {VBox} from './Widget.js';
21
32
  import viewContainersStyles from './viewContainers.css.legacy.js';
@@ -13,7 +13,12 @@ import * as ARIAUtils from './ARIAUtils.js';
13
13
  import type {ContextMenu, Provider} from './ContextMenu.js';
14
14
  import {html} from './Fragment.js';
15
15
  import {Tooltip} from './Tooltip.js';
16
- import {addReferrerToURLIfNecessary, copyLinkAddressLabel, MaxLengthForDisplayedURLs, openLinkExternallyLabel} from './UIUtils.js';
16
+ import {
17
+ addReferrerToURLIfNecessary,
18
+ copyLinkAddressLabel,
19
+ MaxLengthForDisplayedURLs,
20
+ openLinkExternallyLabel,
21
+ } from './UIUtils.js';
17
22
  import {XElement} from './XElement.js';
18
23
 
19
24
  export class XLink extends XElement {
@@ -7,7 +7,14 @@ import * as LitHtml from '../../../lit-html/lit-html.js';
7
7
  import cssAngleStyles from './cssAngle.css.js';
8
8
 
9
9
  import type {Angle} from './CSSAngleUtils.js';
10
- import {AngleUnit, convertAngleUnit, getNewAngleFromEvent, getNextUnit, parseText, roundAngleByUnit} from './CSSAngleUtils.js';
10
+ import {
11
+ AngleUnit,
12
+ convertAngleUnit,
13
+ getNewAngleFromEvent,
14
+ getNextUnit,
15
+ parseText,
16
+ roundAngleByUnit,
17
+ } from './CSSAngleUtils.js';
11
18
  import {ValueChangedEvent} from './InlineEditorUtils.js';
12
19
 
13
20
  import type {CSSAngleEditorData} from './CSSAngleEditor.js';
@@ -8,7 +8,13 @@ import * as LitHtml from '../../../lit-html/lit-html.js';
8
8
  import cssAngleEditorStyles from './cssAngleEditor.css.js';
9
9
 
10
10
  import type {Angle} from './CSSAngleUtils.js';
11
- import {AngleUnit, get2DTranslationsForAngle, getAngleFromRadians, getNewAngleFromEvent, getRadiansFromAngle} from './CSSAngleUtils.js';
11
+ import {
12
+ AngleUnit,
13
+ get2DTranslationsForAngle,
14
+ getAngleFromRadians,
15
+ getNewAngleFromEvent,
16
+ getRadiansFromAngle,
17
+ } from './CSSAngleUtils.js';
12
18
 
13
19
  const {render, html} = LitHtml;
14
20
  const styleMap = LitHtml.Directives.styleMap;
package/package.json CHANGED
@@ -55,5 +55,5 @@
55
55
  "unittest": "scripts/test/run_unittests.py --no-text-coverage",
56
56
  "watch": "vpython third_party/node/node.py --output scripts/watch_build.js"
57
57
  },
58
- "version": "1.0.998787"
58
+ "version": "1.0.999279"
59
59
  }