chrome-devtools-frontend 1.0.948445 → 1.0.948916

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 (35) hide show
  1. package/config/gni/devtools_grd_files.gni +0 -6
  2. package/front_end/core/i18n/locales/en-US.json +15 -30
  3. package/front_end/core/i18n/locales/en-XL.json +15 -30
  4. package/front_end/core/sdk/RemoteObject.ts +15 -1
  5. package/front_end/entrypoints/devtools_app/devtools_app.ts +0 -1
  6. package/front_end/entrypoints/visibility.gni +3 -1
  7. package/front_end/entrypoints/worker_app/worker_app.ts +0 -1
  8. package/front_end/generated/InspectorBackendCommands.js +8 -1
  9. package/front_end/generated/protocol-mapping.d.ts +4 -0
  10. package/front_end/generated/protocol-proxy-api.d.ts +6 -0
  11. package/front_end/generated/protocol.d.ts +9 -0
  12. package/front_end/models/issues_manager/AttributionReportingIssue.ts +27 -2
  13. package/front_end/panels/console/ConsolePrompt.ts +0 -4
  14. package/front_end/panels/elements/AccessibilityTreeUtils.ts +1 -7
  15. package/front_end/panels/elements/PropertiesWidget.ts +109 -4
  16. package/front_end/panels/elements/propertiesWidget.css +34 -0
  17. package/front_end/panels/emulation/DeviceModeToolbar.ts +5 -1
  18. package/package.json +1 -1
  19. package/scripts/eslint_rules/lib/ban_a_tags_in_lit_html.js +2 -11
  20. package/scripts/eslint_rules/lib/ban_literal_devtools_component_tag_names.js +2 -11
  21. package/scripts/eslint_rules/lib/ban_self_closing_custom_element_tagnames.js +2 -11
  22. package/scripts/eslint_rules/lib/ban_style_tags_in_lit_html.js +2 -11
  23. package/scripts/eslint_rules/lib/lit_html_data_as_type.js +2 -11
  24. package/scripts/eslint_rules/lib/lit_html_no_attribute_quotes.js +1 -13
  25. package/scripts/eslint_rules/lib/lit_no_style_interpolation.js +2 -11
  26. package/scripts/eslint_rules/lib/static_tag_must_be_static_property.js +2 -11
  27. package/scripts/eslint_rules/lib/utils.js +29 -0
  28. package/scripts/eslint_rules/tests/.eslintrc.js +4 -0
  29. package/scripts/eslint_rules/tests/utils_test.js +40 -0
  30. package/front_end/panels/help/HelpImpl.ts +0 -141
  31. package/front_end/panels/help/ReleaseNoteText.ts +0 -1496
  32. package/front_end/panels/help/ReleaseNoteView.ts +0 -107
  33. package/front_end/panels/help/help-meta.ts +0 -145
  34. package/front_end/panels/help/help.ts +0 -13
  35. package/front_end/panels/help/releaseNote.css +0 -115
@@ -1,107 +0,0 @@
1
- // Copyright 2017 The Chromium Authors. All rights reserved.
2
- // Use of this source code is governed by a BSD-style license that can be
3
- // found in the LICENSE file.
4
-
5
- import * as Host from '../../core/host/host.js';
6
- import * as i18n from '../../core/i18n/i18n.js';
7
- import * as UI from '../../ui/legacy/legacy.js';
8
-
9
- import {latestReleaseNote, releaseNoteViewId} from './HelpImpl.js';
10
- import releaseNoteStyles from './releaseNote.css.js';
11
-
12
- import type {ReleaseNote} from './HelpImpl.js';
13
-
14
- const UIStrings = {
15
- /**
16
- *@description Text that is usually a hyperlink to more documentation
17
- */
18
- learnMore: 'Learn more',
19
- /**
20
- *@description Text to close something
21
- */
22
- close: 'Close',
23
- };
24
- const str_ = i18n.i18n.registerUIStrings('panels/help/ReleaseNoteView.ts', UIStrings);
25
- const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
26
- let releaseNoteViewInstance: ReleaseNoteView;
27
-
28
- export class ReleaseNoteView extends UI.Widget.VBox {
29
- private readonly releaseNoteElement: Element;
30
- constructor() {
31
- super(true);
32
-
33
- this.releaseNoteElement = this.createReleaseNoteElement(latestReleaseNote());
34
- const topSection = this.contentElement.createChild('div', 'release-note-top-section');
35
- topSection.textContent = latestReleaseNote().header;
36
- this.contentElement.appendChild(this.releaseNoteElement);
37
- }
38
-
39
- static instance(opts: {forceNew: boolean|null} = {forceNew: null}): ReleaseNoteView {
40
- const {forceNew} = opts;
41
- if (!releaseNoteViewInstance || forceNew) {
42
- releaseNoteViewInstance = new ReleaseNoteView();
43
- }
44
- return releaseNoteViewInstance;
45
- }
46
-
47
- elementsToRestoreScrollPositionsFor(): Element[] {
48
- return [this.releaseNoteElement];
49
- }
50
-
51
- private createReleaseNoteElement(releaseNote: ReleaseNote): Element {
52
- const hbox = document.createElement('div');
53
- hbox.classList.add('hbox');
54
- const container = hbox.createChild('div', 'release-note-container');
55
- const contentContainer = container.createChild('ul');
56
- UI.ARIAUtils.setAccessibleName(contentContainer, latestReleaseNote().header);
57
-
58
- let linkNumber = 1;
59
- for (const highlight of releaseNote.highlights) {
60
- const listItem = contentContainer.createChild('li');
61
- const linkWrapper = UI.XLink.XLink.create(highlight.link, '', 'release-note-link');
62
- linkWrapper.textContent = '';
63
- UI.ARIAUtils.markAsLink(linkWrapper);
64
- UI.ARIAUtils.setAccessibleName(
65
- linkWrapper, `${highlight.title}: ${highlight.subtitle} ${linkNumber} of ${releaseNote.highlights.length}`);
66
-
67
- const title = linkWrapper.createChild('div', 'release-note-title');
68
- title.textContent = highlight.title;
69
-
70
- const subtitle = linkWrapper.createChild('div', 'release-note-subtitle');
71
- subtitle.textContent = highlight.subtitle;
72
-
73
- listItem.appendChild(linkWrapper);
74
- linkNumber++;
75
- }
76
-
77
- const actionContainer = container.createChild('div', 'release-note-action-container');
78
- const learnMore = UI.UIUtils.createTextButton(i18nString(UIStrings.learnMore), event => {
79
- event.consume(true);
80
- Host.InspectorFrontendHost.InspectorFrontendHostInstance.openInNewTab(releaseNote.link);
81
- });
82
- UI.ARIAUtils.markAsLink(learnMore);
83
- actionContainer.appendChild(learnMore);
84
-
85
- actionContainer.appendChild(UI.UIUtils.createTextButton(i18nString(UIStrings.close), event => {
86
- event.consume(true);
87
- UI.InspectorView.InspectorView.instance().closeDrawerTab(releaseNoteViewId, true);
88
- }, 'close-release-note'));
89
-
90
- const imageLink = UI.XLink.XLink.create(releaseNote.link, ' ') as HTMLElement;
91
- imageLink.classList.add('release-note-image');
92
- const tooltipText = latestReleaseNote().header;
93
- UI.Tooltip.Tooltip.install(imageLink, tooltipText);
94
-
95
- hbox.appendChild(imageLink);
96
- const image = imageLink.createChild('img') as HTMLImageElement;
97
- image.src = new URL('../../Images/whatsnew.avif', import.meta.url).toString();
98
- UI.Tooltip.Tooltip.install(image, tooltipText);
99
- image.alt = tooltipText;
100
-
101
- return hbox;
102
- }
103
- wasShown(): void {
104
- super.wasShown();
105
- this.registerCSSFiles([releaseNoteStyles]);
106
- }
107
- }
@@ -1,145 +0,0 @@
1
- // Copyright 2020 The Chromium Authors. All rights reserved.
2
- // Use of this source code is governed by a BSD-style license that can be
3
- // found in the LICENSE file.
4
-
5
- import * as Common from '../../core/common/common.js';
6
- import * as i18n from '../../core/i18n/i18n.js';
7
- import * as UI from '../../ui/legacy/legacy.js';
8
-
9
- import type * as Help from './help.js';
10
-
11
- const UIStrings = {
12
- /**
13
- *@description Title of the 'What's New' tool in the bottom drawer
14
- */
15
- whatsNew: 'What\'s New',
16
- /**
17
- *@description Command for showing the 'What's New' tool in the bottom drawer
18
- */
19
- showWhatsNew: 'Show What\'s New',
20
- /**
21
- *@description Title of an action in the help tool to release notes
22
- */
23
- releaseNotes: 'Release notes',
24
- /**
25
- *@description Title of an action in the help tool to file an issue
26
- */
27
- reportADevtoolsIssue: 'Report a DevTools issue',
28
- /**
29
- *@description Title of an action in the help tool to file a translation issue
30
- */
31
- reportTranslationIssue: 'Report a translation issue',
32
- /**
33
- *@description A search term referring to a software defect (i.e. bug) that can be entered in the command menu
34
- */
35
- bug: 'bug',
36
- /**
37
- *@description Title of a setting under the Appearance category that can be invoked through the Command Menu
38
- */
39
- showWhatsNewAfterEachUpdate: 'Show What\'s New after each update',
40
- /**
41
- *@description Title of a setting under the Appearance category that can be invoked through the Command Menu
42
- */
43
- doNotShowWhatsNewAfterEachUpdate: 'Do not show What\'s New after each update',
44
- };
45
- const str_ = i18n.i18n.registerUIStrings('panels/help/help-meta.ts', UIStrings);
46
- const i18nLazyString = i18n.i18n.getLazilyComputedLocalizedString.bind(undefined, str_);
47
-
48
- let loadedHelpModule: (typeof Help|undefined);
49
-
50
- async function loadHelpModule(): Promise<typeof Help> {
51
- if (!loadedHelpModule) {
52
- loadedHelpModule = await import('./help.js');
53
- }
54
- return loadedHelpModule;
55
- }
56
-
57
- UI.ViewManager.registerViewExtension({
58
- location: UI.ViewManager.ViewLocationValues.DRAWER_VIEW,
59
- id: 'release-note',
60
- title: i18nLazyString(UIStrings.whatsNew),
61
- commandPrompt: i18nLazyString(UIStrings.showWhatsNew),
62
- persistence: UI.ViewManager.ViewPersistence.CLOSEABLE,
63
- order: 1,
64
- async loadView() {
65
- const Help = await loadHelpModule();
66
- return Help.ReleaseNoteView.ReleaseNoteView.instance();
67
- },
68
- });
69
-
70
- UI.ActionRegistration.registerActionExtension({
71
- category: UI.ActionRegistration.ActionCategory.HELP,
72
- actionId: 'help.release-notes',
73
- title: i18nLazyString(UIStrings.releaseNotes),
74
- async loadActionDelegate() {
75
- const Help = await loadHelpModule();
76
- return Help.Help.ReleaseNotesActionDelegate.instance();
77
- },
78
- });
79
-
80
- UI.ActionRegistration.registerActionExtension({
81
- category: UI.ActionRegistration.ActionCategory.HELP,
82
- actionId: 'help.report-issue',
83
- title: i18nLazyString(UIStrings.reportADevtoolsIssue),
84
- async loadActionDelegate() {
85
- const Help = await loadHelpModule();
86
- return Help.Help.ReportIssueActionDelegate.instance();
87
- },
88
- tags: [i18nLazyString(UIStrings.bug)],
89
- });
90
-
91
- UI.ActionRegistration.registerActionExtension({
92
- category: UI.ActionRegistration.ActionCategory.HELP,
93
- actionId: 'help.report-translation-issue',
94
- title: i18nLazyString(UIStrings.reportTranslationIssue),
95
- async loadActionDelegate() {
96
- const Help = await loadHelpModule();
97
- return Help.Help.ReportTranslationIssueActionDelegate.instance();
98
- },
99
- tags: [i18nLazyString(UIStrings.bug)],
100
- });
101
-
102
- Common.Settings.registerSettingExtension({
103
- category: Common.Settings.SettingCategory.APPEARANCE,
104
- storageType: Common.Settings.SettingStorageType.Synced,
105
- title: i18nLazyString(UIStrings.showWhatsNewAfterEachUpdate),
106
- settingName: 'help.show-release-note',
107
- settingType: Common.Settings.SettingType.BOOLEAN,
108
- defaultValue: true,
109
- options: [
110
- {
111
- value: true,
112
- title: i18nLazyString(UIStrings.showWhatsNewAfterEachUpdate),
113
- },
114
- {
115
- value: false,
116
- title: i18nLazyString(UIStrings.doNotShowWhatsNewAfterEachUpdate),
117
- },
118
- ],
119
- });
120
-
121
- UI.ContextMenu.registerItem({
122
- location: UI.ContextMenu.ItemLocation.MAIN_MENU_HELP_DEFAULT,
123
- actionId: 'help.release-notes',
124
- order: 10,
125
- });
126
-
127
- UI.ContextMenu.registerItem({
128
- location: UI.ContextMenu.ItemLocation.MAIN_MENU_HELP_DEFAULT,
129
- actionId: 'help.report-issue',
130
- order: 11,
131
- });
132
-
133
- UI.ContextMenu.registerItem({
134
- location: UI.ContextMenu.ItemLocation.MAIN_MENU_HELP_DEFAULT,
135
- actionId: 'help.report-translation-issue',
136
- order: 12,
137
- });
138
-
139
- Common.Runnable.registerLateInitializationRunnable({
140
- id: 'whats-new',
141
- async loadRunnable() {
142
- const Help = await loadHelpModule();
143
- return Help.Help.HelpLateInitialization.instance();
144
- },
145
- });
@@ -1,13 +0,0 @@
1
- // Copyright 2019 The Chromium Authors. All rights reserved.
2
- // Use of this source code is governed by a BSD-style license that can be
3
- // found in the LICENSE file.
4
-
5
- import * as Help from './HelpImpl.js';
6
- import * as ReleaseNoteText from './ReleaseNoteText.js';
7
- import * as ReleaseNoteView from './ReleaseNoteView.js';
8
-
9
- export {
10
- Help,
11
- ReleaseNoteText,
12
- ReleaseNoteView,
13
- };
@@ -1,115 +0,0 @@
1
- /*
2
- * Copyright 2017 The Chromium Authors. All rights reserved.
3
- * Use of this source code is governed by a BSD-style license that can be
4
- * found in the LICENSE file.
5
- */
6
-
7
- .hbox {
8
- overflow-y: auto;
9
- overflow-x: hidden;
10
- }
11
-
12
- .release-note-top-section {
13
- height: 27px;
14
- line-height: 27px;
15
- padding: 0 15px;
16
- flex: none;
17
- color: var(--color-text-primary);
18
- background-color: var(--color-background-elevation-1);
19
- border-bottom: var(--legacy-divider-border);
20
- overflow: hidden;
21
- white-space: nowrap;
22
- text-overflow: ellipsis;
23
- }
24
-
25
- .release-note-container {
26
- display: flex;
27
- flex-direction: column;
28
- }
29
-
30
- .release-note-container ul {
31
- display: flex;
32
- padding: 10px 16px;
33
- flex-direction: column;
34
- flex: none;
35
- margin: 4px 12px 0 2px;
36
- max-width: 600px;
37
- }
38
-
39
- .release-note-container li {
40
- display: flex;
41
- flex-direction: column;
42
- flex: none;
43
- line-height: 24px;
44
- font-size: 14px;
45
- }
46
-
47
- .release-note-container .release-note-link {
48
- border: 1px solid var(--color-details-hairline-light);
49
- padding-left: 8px;
50
- padding-right: 8px;
51
- margin-bottom: 4px;
52
- text-decoration: none;
53
- }
54
-
55
- .release-note-container .release-note-link:hover {
56
- border-color: var(--color-details-hairline);
57
- }
58
-
59
- .release-note-title,
60
- .release-note-subtitle {
61
- color: inherit;
62
- text-decoration: none;
63
- }
64
-
65
- .release-note-subtitle {
66
- font-size: 13px;
67
- line-height: 13px;
68
- padding-bottom: 8px;
69
- }
70
-
71
- .release-note-container li:not(:hover) .release-note-subtitle {
72
- color: var(--color-text-secondary);
73
- }
74
-
75
- .release-note-action-container > button {
76
- margin: 10px 0 20px 20px;
77
- color: var(--color-text-secondary);
78
- }
79
-
80
- .release-note-action-container {
81
- flex: none;
82
- }
83
-
84
- .release-note-image {
85
- flex-shrink: 2;
86
- }
87
-
88
- img {
89
- margin: 20px;
90
- width: 260px;
91
- height: 200px;
92
- flex: none;
93
- box-shadow: var(--drop-shadow-depth-1);
94
- }
95
-
96
- img:hover {
97
- box-shadow: var(--drop-shadow-depth-4);
98
- }
99
-
100
- @media (forced-colors: active) {
101
- .release-note-container .release-note-link {
102
- border-color: ButtonText;
103
- }
104
-
105
- .release-note-container .release-note-link:hover {
106
- forced-color-adjust: none;
107
- border-color: Highlight;
108
- }
109
-
110
- .release-note-container li .release-note-title,
111
- .release-note-container li:not(:hover) .release-note-subtitle {
112
- forced-color-adjust: none;
113
- color: linktext;
114
- }
115
- }