chrome-devtools-frontend 1.0.945329 → 1.0.946351
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/all_devtools_files.gni +0 -5
- package/config/gni/devtools_grd_files.gni +1 -33
- package/config/gni/devtools_image_files.gni +1 -0
- package/front_end/Images/src/circled_exclamation_icon.svg +3 -0
- package/front_end/core/host/UserMetrics.ts +0 -1
- package/front_end/core/i18n/locales/en-US.json +12 -12
- package/front_end/core/i18n/locales/en-XL.json +12 -12
- package/front_end/core/root/Runtime.ts +0 -1
- package/front_end/core/sdk/CSSMetadata.ts +0 -1
- package/front_end/core/sdk/CSSProperty.ts +16 -9
- package/front_end/core/sdk/sdk-meta.ts +20 -8
- package/front_end/devtools_compatibility.js +0 -7
- package/front_end/entrypoints/devtools_app/devtools_app.js +3 -0
- package/front_end/entrypoints/devtools_app/devtools_app.json +1 -2
- package/front_end/entrypoints/formatter_worker/CSSFormatter.ts +1 -3
- package/front_end/entrypoints/formatter_worker/FormatterActions.ts +0 -2
- package/front_end/entrypoints/formatter_worker/FormatterWorker.ts +0 -120
- package/front_end/entrypoints/formatter_worker/formatter_worker-entrypoint.ts +1 -11
- package/front_end/entrypoints/formatter_worker/formatter_worker.ts +5 -0
- package/front_end/entrypoints/js_app/js_app.js +3 -0
- package/front_end/entrypoints/js_app/js_app.json +1 -2
- package/front_end/entrypoints/main/MainImpl.ts +0 -6
- package/front_end/entrypoints/ndb_app/ndb_app.js +3 -0
- package/front_end/entrypoints/ndb_app/ndb_app.json +1 -2
- package/front_end/entrypoints/node_app/node_app.js +3 -0
- package/front_end/entrypoints/node_app/node_app.json +1 -2
- package/front_end/entrypoints/shell/shell.js +18 -1
- package/front_end/entrypoints/worker_app/worker_app.js +3 -0
- package/front_end/entrypoints/worker_app/worker_app.json +1 -2
- package/front_end/generated/protocol.d.ts +0 -4
- package/front_end/legacy_test_runner/sources_test_runner/sources_test_runner.js +0 -1
- package/front_end/models/bindings/DebuggerWorkspaceBinding.ts +1 -1
- package/front_end/models/bindings/ResourceMapping.ts +1 -1
- package/front_end/models/emulation/EmulatedDevices.ts +2 -4
- package/front_end/models/formatter/FormatterWorkerPool.ts +0 -18
- package/front_end/models/text_utils/CodeMirrorUtils.ts +6 -51
- package/front_end/models/text_utils/TextUtils.ts +1 -2
- package/front_end/models/text_utils/text_utils-legacy.ts +0 -5
- package/front_end/panels/animation/AnimationTimeline.ts +1 -1
- package/front_end/panels/application/ApplicationPanelSidebar.ts +2 -4
- package/front_end/panels/application/BackForwardCacheView.ts +8 -1
- package/front_end/panels/elements/StyleEditorWidget.ts +13 -2
- package/front_end/panels/elements/StylePropertyTreeElement.ts +8 -12
- package/front_end/panels/elements/StylesSidebarPane.ts +35 -9
- package/front_end/panels/elements/elementsTreeOutline.css +0 -13
- package/front_end/panels/network/NetworkConfigView.ts +10 -0
- package/front_end/panels/network/NetworkItemView.ts +10 -1
- package/front_end/panels/network/networkConfigView.css +5 -0
- package/front_end/panels/profiler/heapProfiler.css +2 -5
- package/front_end/panels/profiler/profilesPanel.css +1 -1
- package/front_end/panels/settings/emulation/components/UserAgentClientHintsForm.ts +6 -4
- package/front_end/panels/settings/emulation/components/userAgentClientHintsForm.css +0 -12
- package/front_end/panels/sources/DebuggerPlugin.ts +6 -2
- package/front_end/panels/sources/sourcesView.css +0 -130
- package/front_end/panels/webauthn/WebauthnPane.ts +31 -32
- package/front_end/third_party/codemirror/codemirror-tsconfig.json +1 -25
- 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 +24 -32
- 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 +55 -52
- package/front_end/ui/components/text_editor/config.ts +3 -3
- package/front_end/ui/components/text_editor/javascript.ts +27 -9
- package/front_end/ui/components/text_editor/theme.ts +1 -0
- 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/ListWidget.ts +2 -2
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +2 -3
- package/front_end/ui/legacy/components/object_ui/objectPropertiesSection.css +0 -1
- package/front_end/ui/legacy/components/object_ui/object_ui-legacy.ts +0 -8
- package/front_end/ui/legacy/components/object_ui/object_ui.ts +0 -4
- package/front_end/ui/legacy/components/source_frame/SourceFrame.ts +3 -0
- package/front_end/ui/legacy/inspectorSyntaxHighlight.css +0 -211
- package/front_end/ui/legacy/legacy-legacy.ts +0 -6
- package/front_end/ui/legacy/legacy.ts +0 -2
- package/front_end/ui/legacy/tabbedPane.css +1 -1
- package/inspector_overlay/main.ts +12 -2
- package/package.json +1 -1
- package/scripts/check_gn.js +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
- package/scripts/hosted_mode/server.js +17 -2
- package/front_end/entrypoints/shell/shell-meta-files.ts +0 -22
- package/front_end/entrypoints/shell/shell.json +0 -5
- package/front_end/ui/legacy/TextEditor.ts +0 -82
- package/front_end/ui/legacy/components/object_ui/JavaScriptAutocomplete.ts +0 -836
- package/front_end/ui/legacy/components/text_editor/CodeMirrorTextEditor.ts +0 -1676
- package/front_end/ui/legacy/components/text_editor/TextEditorAutocompleteController.ts +0 -586
- package/front_end/ui/legacy/components/text_editor/autocompleteTooltip.css +0 -20
- package/front_end/ui/legacy/components/text_editor/cm_modes.ts +0 -23
- package/front_end/ui/legacy/components/text_editor/cmdevtools.css +0 -995
- package/front_end/ui/legacy/components/text_editor/module.json +0 -7
- package/front_end/ui/legacy/components/text_editor/text_editor-legacy.ts +0 -33
- package/front_end/ui/legacy/components/text_editor/text_editor.ts +0 -13
|
@@ -132,11 +132,8 @@
|
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
.heap-snapshot-view tr:not(.selected) td.object-column span.heap-object-tag
|
|
136
|
-
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
.heap-snapshot-view td.object-column span.grayed {
|
|
135
|
+
.heap-snapshot-view tr:not(.selected) td.object-column span.heap-object-tag,
|
|
136
|
+
.heap-snapshot-view tr:not(.selected) td.object-column span.grayed {
|
|
140
137
|
color: var(--color-text-secondary);
|
|
141
138
|
}
|
|
142
139
|
|
|
@@ -3,8 +3,10 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import * as i18n from '../../../../core/i18n/i18n.js';
|
|
6
|
+
import * as Buttons from '../../../../ui/components/buttons/buttons.js';
|
|
6
7
|
import * as ComponentHelpers from '../../../../ui/components/helpers/helpers.js';
|
|
7
8
|
import * as LitHtml from '../../../../ui/lit-html/lit-html.js';
|
|
9
|
+
|
|
8
10
|
import userAgentClientHintsFormStyles from './userAgentClientHintsForm.css.js';
|
|
9
11
|
|
|
10
12
|
import type * as Protocol from '../../../../generated/protocol.js';
|
|
@@ -532,12 +534,12 @@ export class UserAgentClientHintsForm extends HTMLElement {
|
|
|
532
534
|
'architecture');
|
|
533
535
|
const deviceModelSection = this.renderDeviceModelSection();
|
|
534
536
|
const submitButton = this.showSubmitButton ? LitHtml.html`
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
537
|
+
<${Buttons.Button.Button.litTagName}
|
|
538
|
+
.variant=${Buttons.Button.Variant.SECONDARY}
|
|
539
|
+
.type=${'submit'}
|
|
538
540
|
>
|
|
539
541
|
${i18nString(UIStrings.update)}
|
|
540
|
-
|
|
542
|
+
</${Buttons.Button.Button.litTagName}>
|
|
541
543
|
` :
|
|
542
544
|
LitHtml.html``;
|
|
543
545
|
const output = LitHtml.html`
|
|
@@ -96,18 +96,6 @@
|
|
|
96
96
|
margin-left: 5px;
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
.submit-button {
|
|
100
|
-
border: none;
|
|
101
|
-
border-radius: 2px;
|
|
102
|
-
font-weight: normal;
|
|
103
|
-
height: 24px;
|
|
104
|
-
font-size: 12px;
|
|
105
|
-
padding: 0 12px;
|
|
106
|
-
cursor: pointer;
|
|
107
|
-
background-color: var(--color-primary-variant);
|
|
108
|
-
color: var(--color-text-primary);
|
|
109
|
-
}
|
|
110
|
-
|
|
111
99
|
.hide-container {
|
|
112
100
|
display: none;
|
|
113
101
|
}
|
|
@@ -589,8 +589,12 @@ export class DebuggerPlugin extends Plugin {
|
|
|
589
589
|
if (node.firstChild) {
|
|
590
590
|
return null;
|
|
591
591
|
}
|
|
592
|
-
while (
|
|
593
|
-
|
|
592
|
+
while (
|
|
593
|
+
node && node.name !== 'VariableDefinition' && node.name !== 'VariableName' &&
|
|
594
|
+
node.name !== 'MemberExpression' &&
|
|
595
|
+
!(node.name === 'PropertyName' && node.parent?.name === 'PatternProperty' &&
|
|
596
|
+
node.nextSibling?.name !== ':') &&
|
|
597
|
+
!(node.name === 'PropertyDefinition' && node.parent?.name === 'Property' && node.nextSibling?.name !== ':')) {
|
|
594
598
|
node = node.parent;
|
|
595
599
|
}
|
|
596
600
|
if (!node) {
|
|
@@ -58,133 +58,3 @@
|
|
|
58
58
|
.-theme-with-dark-background .source-frame-debugger-script {
|
|
59
59
|
--override-debugger-background-tint: rgb(61 61 0 / 50%);
|
|
60
60
|
}
|
|
61
|
-
|
|
62
|
-
@keyframes source-frame-value-update-highlight-animation {
|
|
63
|
-
from {
|
|
64
|
-
background-color: inherit;
|
|
65
|
-
color: inherit;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
10% {
|
|
69
|
-
background-color: var(--override-highlight-animation-10pc-background-color);
|
|
70
|
-
color: var(--override-highlight-animation-10pc-foreground-color);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
to {
|
|
74
|
-
background-color: inherit;
|
|
75
|
-
color: inherit;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
.source-frame-value-update-highlight {
|
|
80
|
-
animation: source-frame-value-update-highlight-animation 0.8s 1 cubic-bezier(0, 0, 0.2, 1);
|
|
81
|
-
border-radius: 2px;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
.diff-entry-insert {
|
|
85
|
-
--override-diff-line-number-background-color: hsl(144deg 55% 49% / 20%);
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
.-theme-with-dark-background .diff-entry-insert,
|
|
89
|
-
:host-context(.-theme-with-dark-background) .diff-entry-insert {
|
|
90
|
-
--override-diff-line-number-background-color: rgb(61 199 116 / 20%);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
.diff-entry-insert .diff-marker {
|
|
94
|
-
border-left: 4px solid var(--color-accent-green);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
.diff-entry-insert .CodeMirror-gutter-background {
|
|
98
|
-
background-color: var(--override-diff-line-number-background-color);
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
.diff-entry-modify {
|
|
102
|
-
--override-diff-line-number-background-color: rgb(186 104 200 / 20%);
|
|
103
|
-
--override-diff-line-number-border-color: #9c27b0;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
.-theme-with-dark-background .diff-entry-modify,
|
|
107
|
-
:host-context(.-theme-with-dark-background) .diff-entry-modify {
|
|
108
|
-
--override-diff-line-number-background-color: rgb(137 55 151 / 20%);
|
|
109
|
-
--override-diff-line-number-border-color: rgb(196 79 216);
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
.diff-entry-modify .diff-marker {
|
|
113
|
-
border-left: 4px solid var(--override-diff-line-number-border-color);
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
.diff-entry-modify .CodeMirror-gutter-background {
|
|
117
|
-
background-color: var(--override-diff-line-number-background-color);
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
.diff-entry-delete {
|
|
121
|
-
--override-diff-deletion-color: #d32f2f;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
.-theme-with-dark-background .diff-entry-delete,
|
|
125
|
-
:host-context(.-theme-with-dark-background) .diff-entry-delete {
|
|
126
|
-
--override-diff-deletion-color: rgb(208 44 44);
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
.diff-entry-delete .diff-marker {
|
|
130
|
-
width: 0;
|
|
131
|
-
height: 0;
|
|
132
|
-
border-top: 6px solid transparent;
|
|
133
|
-
border-bottom: 6px solid transparent;
|
|
134
|
-
border-left: 6px solid var(--override-diff-deletion-color);
|
|
135
|
-
position: relative;
|
|
136
|
-
top: 6px;
|
|
137
|
-
cursor: pointer;
|
|
138
|
-
left: 0;
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
.diff-entry-delete .CodeMirror-gutter-background {
|
|
142
|
-
border-bottom: 2px solid var(--override-diff-deletion-color);
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
.CodeMirror-gutter-diff {
|
|
146
|
-
width: 4px;
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
.highlight-line-modification {
|
|
150
|
-
--override-modification-background-fadeout-from: rgb(158 54 153 / 50%);
|
|
151
|
-
--override-modification-background-fadeout-90pc: rgb(158 54 153 / 0%);
|
|
152
|
-
--override-modification-foreground-fadeout-from: #fff;
|
|
153
|
-
|
|
154
|
-
animation: source-line-modification-background-fadeout 0.4s 0s;
|
|
155
|
-
animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
.highlight-line-modification span {
|
|
159
|
-
animation: source-line-modification-foreground-fadeout 0.4s 0s;
|
|
160
|
-
animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
@keyframes source-line-modification-background-fadeout {
|
|
164
|
-
from {
|
|
165
|
-
background-color: var(--override-modification-background-fadeout-from);
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
50% {
|
|
169
|
-
/* Purposefully uses the `from` color to delay the animation from 0-50% */
|
|
170
|
-
background-color: var(--override-modification-background-fadeout-from);
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
90% {
|
|
174
|
-
background-color: var(--override-modification-background-fadeout-90pc);
|
|
175
|
-
}
|
|
176
|
-
to { background-color: transparent; }
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
@keyframes source-line-modification-foreground-fadeout {
|
|
180
|
-
from {
|
|
181
|
-
color: var(--override-modification-foreground-fadeout-from);
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
50% {
|
|
185
|
-
/* Purposefully uses the `from` color to delay the animation from 0-50% */
|
|
186
|
-
color: var(--override-modification-foreground-fadeout-from);
|
|
187
|
-
}
|
|
188
|
-
90% { color: initial; }
|
|
189
|
-
to { color: initial; }
|
|
190
|
-
}
|
|
@@ -227,15 +227,15 @@ const PROTOCOL_AUTHENTICATOR_VALUES: Protocol.EnumerableEnum<typeof Protocol.Web
|
|
|
227
227
|
U2f: Protocol.WebAuthn.AuthenticatorProtocol.U2f,
|
|
228
228
|
};
|
|
229
229
|
|
|
230
|
-
export class WebauthnPaneImpl extends UI.Widget.VBox
|
|
231
|
-
|
|
232
|
-
private activeAuthId: Protocol.WebAuthn.AuthenticatorId|null;
|
|
233
|
-
private hasBeenEnabled
|
|
234
|
-
private readonly dataGrids
|
|
235
|
-
|
|
236
|
-
private enableCheckbox
|
|
230
|
+
export class WebauthnPaneImpl extends UI.Widget.VBox implements
|
|
231
|
+
SDK.TargetManager.SDKModelObserver<SDK.WebAuthnModel.WebAuthnModel> {
|
|
232
|
+
private activeAuthId: Protocol.WebAuthn.AuthenticatorId|null = null;
|
|
233
|
+
private hasBeenEnabled = false;
|
|
234
|
+
private readonly dataGrids =
|
|
235
|
+
new Map<Protocol.WebAuthn.AuthenticatorId, DataGrid.DataGrid.DataGridImpl<DataGridNode>>();
|
|
236
|
+
private enableCheckbox!: UI.Toolbar.ToolbarCheckbox;
|
|
237
237
|
private readonly availableAuthenticatorSetting: Common.Settings.Setting<AvailableAuthenticatorOptions[]>;
|
|
238
|
-
private model
|
|
238
|
+
private model?: SDK.WebAuthnModel.WebAuthnModel;
|
|
239
239
|
private authenticatorsView: HTMLElement;
|
|
240
240
|
private topToolbarContainer: HTMLElement|undefined;
|
|
241
241
|
private topToolbar: UI.Toolbar.Toolbar|undefined;
|
|
@@ -253,21 +253,13 @@ export class WebauthnPaneImpl extends UI.Widget.VBox {
|
|
|
253
253
|
|
|
254
254
|
constructor() {
|
|
255
255
|
super(true);
|
|
256
|
+
SDK.TargetManager.TargetManager.instance().observeModels(SDK.WebAuthnModel.WebAuthnModel, this);
|
|
256
257
|
|
|
257
258
|
this.contentElement.classList.add('webauthn-pane');
|
|
258
|
-
this.enabled = false;
|
|
259
|
-
this.activeAuthId = null;
|
|
260
|
-
this.hasBeenEnabled = false;
|
|
261
|
-
this.dataGrids = new Map();
|
|
262
259
|
|
|
263
260
|
this.availableAuthenticatorSetting =
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
const mainTarget = SDK.TargetManager.TargetManager.instance().mainTarget();
|
|
268
|
-
if (mainTarget) {
|
|
269
|
-
this.model = mainTarget.model(SDK.WebAuthnModel.WebAuthnModel);
|
|
270
|
-
}
|
|
261
|
+
Common.Settings.Settings.instance().createSetting<AvailableAuthenticatorOptions[]>(
|
|
262
|
+
'webauthnAuthenticators', []);
|
|
271
263
|
|
|
272
264
|
this.createToolbar();
|
|
273
265
|
this.authenticatorsView = this.contentElement.createChild('div', 'authenticators-view');
|
|
@@ -284,6 +276,18 @@ export class WebauthnPaneImpl extends UI.Widget.VBox {
|
|
|
284
276
|
return webauthnPaneImplInstance;
|
|
285
277
|
}
|
|
286
278
|
|
|
279
|
+
modelAdded(model: SDK.WebAuthnModel.WebAuthnModel): void {
|
|
280
|
+
if (model.target() === SDK.TargetManager.TargetManager.instance().mainTarget()) {
|
|
281
|
+
this.model = model;
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
modelRemoved(model: SDK.WebAuthnModel.WebAuthnModel): void {
|
|
286
|
+
if (model.target() === SDK.TargetManager.TargetManager.instance().mainTarget()) {
|
|
287
|
+
this.model = undefined;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
|
|
287
291
|
private async loadInitialAuthenticators(): Promise<void> {
|
|
288
292
|
let activeAuthenticatorId: Protocol.WebAuthn.AuthenticatorId|null = null;
|
|
289
293
|
const availableAuthenticators = this.availableAuthenticatorSetting.get();
|
|
@@ -422,7 +426,6 @@ export class WebauthnPaneImpl extends UI.Widget.VBox {
|
|
|
422
426
|
Host.userMetrics.actionTaken(Host.UserMetrics.Action.VirtualAuthenticatorEnvironmentEnabled);
|
|
423
427
|
this.hasBeenEnabled = true;
|
|
424
428
|
}
|
|
425
|
-
this.enabled = enable;
|
|
426
429
|
if (this.model) {
|
|
427
430
|
await this.model.setVirtualAuthEnvEnabled(enable);
|
|
428
431
|
}
|
|
@@ -609,7 +612,7 @@ export class WebauthnPaneImpl extends UI.Widget.VBox {
|
|
|
609
612
|
UI.UIUtils.createRadioLabel(`active-authenticator-${authenticatorId}`, i18nString(UIStrings.active));
|
|
610
613
|
activeLabel.radioElement.addEventListener('click', this.setActiveAuthenticator.bind(this, authenticatorId));
|
|
611
614
|
activeButtonContainer.appendChild(activeLabel);
|
|
612
|
-
|
|
615
|
+
(activeLabel.radioElement as HTMLInputElement).checked = true;
|
|
613
616
|
this.activeAuthId = authenticatorId; // Newly added authenticator is automatically set as active.
|
|
614
617
|
|
|
615
618
|
const removeButton = headerElement.createChild('button', 'text-button');
|
|
@@ -783,19 +786,16 @@ export class WebauthnPaneImpl extends UI.Widget.VBox {
|
|
|
783
786
|
throw new Error('Unable to create options from current inputs');
|
|
784
787
|
}
|
|
785
788
|
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
transport: this.transportSelect.options[this.transportSelect.selectedIndex].value,
|
|
789
|
+
return {
|
|
790
|
+
protocol: this.protocolSelect.options[this.protocolSelect.selectedIndex].value as
|
|
791
|
+
Protocol.WebAuthn.AuthenticatorProtocol,
|
|
792
|
+
transport: this.transportSelect.options[this.transportSelect.selectedIndex].value as
|
|
793
|
+
Protocol.WebAuthn.AuthenticatorTransport,
|
|
792
794
|
hasResidentKey: this.residentKeyCheckbox.checked,
|
|
793
795
|
hasUserVerification: this.userVerificationCheckbox.checked,
|
|
794
796
|
automaticPresenceSimulation: true,
|
|
795
797
|
isUserVerified: true,
|
|
796
|
-
}
|
|
797
|
-
|
|
798
|
-
return options;
|
|
798
|
+
};
|
|
799
799
|
}
|
|
800
800
|
|
|
801
801
|
/**
|
|
@@ -824,8 +824,7 @@ export class WebauthnPaneImpl extends UI.Widget.VBox {
|
|
|
824
824
|
if (!button) {
|
|
825
825
|
return;
|
|
826
826
|
}
|
|
827
|
-
button.checked =
|
|
828
|
-
/** @type {!HTMLElement} */ (authenticator as HTMLElement).dataset.authenticatorId === this.activeAuthId;
|
|
827
|
+
button.checked = (authenticator as HTMLElement).dataset.authenticatorId === this.activeAuthId;
|
|
829
828
|
});
|
|
830
829
|
}
|
|
831
830
|
|
|
@@ -3,33 +3,9 @@
|
|
|
3
3
|
"composite": true
|
|
4
4
|
},
|
|
5
5
|
"files": [
|
|
6
|
-
"package/addon/comment/comment.js",
|
|
7
|
-
"package/addon/edit/closebrackets.js",
|
|
8
|
-
"package/addon/edit/matchbrackets.js",
|
|
9
|
-
"package/addon/fold/brace-fold.js",
|
|
10
|
-
"package/addon/fold/foldcode.js",
|
|
11
|
-
"package/addon/fold/foldgutter.js",
|
|
12
|
-
"package/addon/mode/multiplex.js",
|
|
13
|
-
"package/addon/mode/overlay.js",
|
|
14
|
-
"package/addon/mode/simple.js",
|
|
15
6
|
"package/addon/runmode/runmode-standalone.js",
|
|
16
|
-
"package/addon/selection/active-line.js",
|
|
17
|
-
"package/addon/selection/mark-selection.js",
|
|
18
|
-
"package/lib/codemirror.js",
|
|
19
|
-
"package/mode/clike/clike.js",
|
|
20
|
-
"package/mode/clojure/clojure.js",
|
|
21
|
-
"package/mode/coffeescript/coffeescript.js",
|
|
22
7
|
"package/mode/css/css.js",
|
|
23
|
-
"package/mode/htmlembedded/htmlembedded.js",
|
|
24
|
-
"package/mode/htmlmixed/htmlmixed.js",
|
|
25
8
|
"package/mode/javascript/javascript.js",
|
|
26
|
-
"package/mode/jsx/jsx.js",
|
|
27
|
-
"package/mode/livescript/livescript.js",
|
|
28
|
-
"package/mode/markdown/markdown.js",
|
|
29
|
-
"package/mode/php/php.js",
|
|
30
|
-
"package/mode/python/python.js",
|
|
31
|
-
"package/mode/shell/shell.js",
|
|
32
|
-
"package/mode/wast/wast.js",
|
|
33
9
|
"package/mode/xml/xml.js"
|
|
34
10
|
]
|
|
35
|
-
}
|
|
11
|
+
}
|
|
@@ -19,18 +19,18 @@ export class Adorner extends HTMLElement {
|
|
|
19
19
|
static readonly litTagName = LitHtml.literal`devtools-adorner`;
|
|
20
20
|
name = '';
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
readonly #shadow = this.attachShadow({mode: 'open'});
|
|
23
|
+
#isToggle = false;
|
|
24
|
+
#ariaLabelDefault?: string;
|
|
25
|
+
#ariaLabelActive?: string;
|
|
26
|
+
#content?: HTMLElement;
|
|
27
27
|
|
|
28
28
|
set data(data: AdornerData) {
|
|
29
29
|
this.name = data.name;
|
|
30
30
|
data.content.slot = 'content';
|
|
31
|
-
this
|
|
31
|
+
this.#content?.remove();
|
|
32
32
|
this.append(data.content);
|
|
33
|
-
this
|
|
33
|
+
this.#content = data.content;
|
|
34
34
|
this.render();
|
|
35
35
|
}
|
|
36
36
|
|
|
@@ -38,7 +38,7 @@ export class Adorner extends HTMLElement {
|
|
|
38
38
|
if (!this.getAttribute('aria-label')) {
|
|
39
39
|
this.setAttribute('aria-label', this.name);
|
|
40
40
|
}
|
|
41
|
-
this
|
|
41
|
+
this.#shadow.adoptedStyleSheets = [adornerStyles];
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
isActive(): boolean {
|
|
@@ -50,12 +50,12 @@ export class Adorner extends HTMLElement {
|
|
|
50
50
|
* an active state; pass `false` to force-set an inactive state.
|
|
51
51
|
*/
|
|
52
52
|
toggle(forceActiveState?: boolean): void {
|
|
53
|
-
if (!this
|
|
53
|
+
if (!this.#isToggle) {
|
|
54
54
|
return;
|
|
55
55
|
}
|
|
56
56
|
const shouldBecomeActive = forceActiveState === undefined ? !this.isActive() : forceActiveState;
|
|
57
57
|
this.setAttribute('aria-pressed', Boolean(shouldBecomeActive).toString());
|
|
58
|
-
this.setAttribute('aria-label', (shouldBecomeActive ? this
|
|
58
|
+
this.setAttribute('aria-label', (shouldBecomeActive ? this.#ariaLabelActive : this.#ariaLabelDefault) || this.name);
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
show(): void {
|
|
@@ -78,9 +78,9 @@ export class Adorner extends HTMLElement {
|
|
|
78
78
|
}): void {
|
|
79
79
|
const {isToggle = false, shouldPropagateOnKeydown = false, ariaLabelDefault, ariaLabelActive} = options;
|
|
80
80
|
|
|
81
|
-
this
|
|
82
|
-
this
|
|
83
|
-
this
|
|
81
|
+
this.#isToggle = isToggle;
|
|
82
|
+
this.#ariaLabelDefault = ariaLabelDefault;
|
|
83
|
+
this.#ariaLabelActive = ariaLabelActive;
|
|
84
84
|
this.setAttribute('aria-label', ariaLabelDefault);
|
|
85
85
|
|
|
86
86
|
if (isToggle) {
|
|
@@ -111,7 +111,7 @@ export class Adorner extends HTMLElement {
|
|
|
111
111
|
// clang-format off
|
|
112
112
|
render(html`
|
|
113
113
|
<slot name="content"></slot>
|
|
114
|
-
`, this
|
|
114
|
+
`, this.#shadow, {
|
|
115
115
|
host: this,
|
|
116
116
|
});
|
|
117
117
|
}
|