diff --git a/packages/lit-analyzer/package.json b/packages/lit-analyzer/package.json
index ffb5ddbf..19ba7d36 100644
--- a/packages/lit-analyzer/package.json
+++ b/packages/lit-analyzer/package.json
@@ -47,9 +47,9 @@
"fast-glob": "^2.2.6",
"parse5": "5.1.0",
"ts-simple-type": "~1.0.5",
- "vscode-css-languageservice": "4.3.0",
- "vscode-html-languageservice": "3.1.0",
- "vscode-web-custom-data": "^0.3.0",
+ "vscode-css-languageservice": "4.4.0",
+ "vscode-html-languageservice": "3.2.0",
+ "vscode-web-custom-data": "^0.3.6",
"web-component-analyzer": "~1.1.1"
},
"devDependencies": {
diff --git a/packages/lit-analyzer/src/test/rules/no-incompatible-type-binding.ts b/packages/lit-analyzer/src/test/rules/no-incompatible-type-binding.ts
index c7cc6226..cdc11444 100644
--- a/packages/lit-analyzer/src/test/rules/no-incompatible-type-binding.ts
+++ b/packages/lit-analyzer/src/test/rules/no-incompatible-type-binding.ts
@@ -177,6 +177,16 @@ tsTest("Attribute binding: Boolean type expression (false) is assignable to 'tru
hasNoDiagnostics(t, diagnostics);
});
+tsTest("Attribute binding: Non boolean expression (dialog) is assignable to aria-haspopup", t => {
+ const { diagnostics } = getDiagnostics('html``');
+ hasNoDiagnostics(t, diagnostics);
+});
+
+tsTest("Attribute binding: Random string literal is not assignable to aria-haspopup", t => {
+ const { diagnostics } = getDiagnostics('html``');
+ hasDiagnostic(t, diagnostics, "no-incompatible-type-binding");
+});
+
tsTest("Attribute binding: Union of 'string | Directive' type expression is assignable to string", t => {
const { diagnostics } = getDiagnostics('type DirectiveFn = {}; html``');
hasNoDiagnostics(t, diagnostics);