Skip to content

Commit cb0f451

Browse files
Merge pull request #2667 from johanrd/night_fix/template-no-class-bindings
Post-merge-review: Fix `template-no-class-bindings` false positive in GJS/GTS
2 parents bf2a348 + 80c9cf0 commit cb0f451

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

lib/rules/template-no-class-bindings.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,11 @@ module.exports = {
2323
},
2424

2525
create(context) {
26+
const isStrictMode = context.filename.endsWith('.gjs') || context.filename.endsWith('.gts');
27+
if (isStrictMode) {
28+
return {};
29+
}
30+
2631
const FORBIDDEN_ATTR_NAMES = new Set([
2732
'classBinding',
2833
'@classBinding',

tests/lib/rules/template-no-class-bindings.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,15 @@ ruleTester.run('template-no-class-bindings', rule, {
1313
'<template>{{true}}</template>',
1414
'<template>{{"hehe"}}</template>',
1515
'<template><div class="foo"></div></template>',
16+
// Rule is HBS-only: @classBinding in GJS/GTS may be a legitimate component argument
17+
{
18+
filename: 'test.gjs',
19+
code: '<template><SomeThing @classBinding="lol:wat" /></template>',
20+
},
21+
{
22+
filename: 'test.gts',
23+
code: '<template>{{some-thing classNameBindings="lol:foo:bar"}}</template>',
24+
},
1625
],
1726
invalid: [
1827
{

0 commit comments

Comments
 (0)