Handle ToolbarButton.Events.CLICK in no-imperative-dom-api
Bug: 407750083
Change-Id: Ibbf004635c17552f97d192fd8cabdf537c679b74
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6494795
Commit-Queue: Philip Pfaffe <[email protected]>
Reviewed-by: Philip Pfaffe <[email protected]>
Auto-Submit: Danil Somsikov <[email protected]>
diff --git a/scripts/eslint_rules/lib/no-imperative-dom-api/toolbar.ts b/scripts/eslint_rules/lib/no-imperative-dom-api/toolbar.ts
index d8fc313..0891afc 100644
--- a/scripts/eslint_rules/lib/no-imperative-dom-api/toolbar.ts
+++ b/scripts/eslint_rules/lib/no-imperative-dom-api/toolbar.ts
@@ -23,6 +23,8 @@
return 'change';
case 'UI.Toolbar.ToolbarInput.Event.ENTER_PRESSED':
return 'submit';
+ case 'UI.Toolbar.ToolbarButton.Events.CLICK':
+ return 'click';
default:
return null;
}
diff --git a/scripts/eslint_rules/tests/no-imperative-dom-api.test.ts b/scripts/eslint_rules/tests/no-imperative-dom-api.test.ts
index b28ce7a..75d263d 100644
--- a/scripts/eslint_rules/tests/no-imperative-dom-api.test.ts
+++ b/scripts/eslint_rules/tests/no-imperative-dom-api.test.ts
@@ -313,8 +313,9 @@
constructor() {
super();
const toolbar = this.contentElement.createChild('devtools-toolbar');
- const filterInput = new UI.Toolbar.ToolbarButton(i18nString(UIStrings.editName), 'edit', undefined, 'edit-name');
- toolbar.appendToolbarItem(filterInput);
+ const editButton = new UI.Toolbar.ToolbarButton(i18nString(UIStrings.editName), 'edit', undefined, 'edit-name');
+ editButton.addEventListener(UI.Toolbar.ToolbarButton.Events.CLICK, this.onClick.bind(this));
+ toolbar.appendToolbarItem(editButton);
}
}`,
output: `
@@ -323,7 +324,7 @@
render(html\`
<div>
<devtools-toolbar>
- <devtools-button title=\${i18nString(UIStrings.editName)}
+ <devtools-button title=\${i18nString(UIStrings.editName)} @click=\${this.onClick.bind(this)}
.variant=\${Buttons.Button.Variant.TOOLBAR} .iconName=\${'edit'}
.jslogContext=\${'edit-name'}></devtools-button>
</devtools-toolbar>